studio programacion para móviles libro edición desarrollo desarrollar curso aprende aplicaciones android firebase google-analytics google-app-invites

para - manual de programacion android pdf



¿Cómo usar y seguir correctamente las invitaciones de aplicaciones? (2)

Fondo

Google permite realizar invitaciones a aplicaciones y también hacer un seguimiento de cómo mejoran sus instalaciones de aplicaciones:

https://www.youtube.com/watch?v=UfdCNYXMC9M

El problema

Hice una invitación a una aplicación simple, y parece que la gente la usa, usando este código:

public static Intent getAppInviteIntent(Context context) { return new AppInviteInvitation.IntentBuilder(title,appName).setCustomImage(imageUri).setMessage(message).setCallToActionText(download).build(); } startActivityForResult(getAppInviteIntent(this), GOOGLE_APP_INVITES_REQUEST_CODE);

Esto funciona, pero en la página web de Analytics , no puedo encontrar una manera de mostrar las estadísticas de la aplicación-invitación, y eso es a pesar de que dicen que es automático ( here ). Lamentablemente, incluso lo que he encontrado parece bastante viejo y utiliza funciones obsoletas.

Lo que he intentado

Pensé que tal vez no es del todo automático (porque el tutorial también tiene un código adicional para la parte del receptor, here ), y es posible que tengamos que agregar algo de código, como dice esta documentación :

Cuando el usuario acepta una invitación e instala la aplicación, getInvitation (GoogleApiClient, Activity, boolean) actualizará el estado de la invitación a la instalación y devolverá los datos de la invitación en un intento al que se accede desde AppInviteInvitationResult usando getInvitationIntent ()

Mirando la muestra de Google ( here ), he notado que crearon 2 actividades. Una es la actividad principal, que tiene una llamada a "getInvitation", y otra se llama "DeepLinkActivity", y maneja enlaces profundos (que probablemente sean para datos adicionales, como cupones).

También encontré algunas preguntas de stackOverflow sobre el seguimiento (como here ), pero todo lo que veo es que las personas no lograron el seguimiento aún.

Las preguntas

  1. ¿Cuál es el código mínimo necesario para rastrear las invitaciones y qué tan bien funcionan, como se muestra en el video? ¿Qué se debe configurar en la propia página de Analytics? Actualmente no uso la vinculación profunda, por lo que no quiero usarla.

  2. Parece que Google movió la característica de la aplicación de invitaciones a los repositorios de gradle "firebase". ¿Es un deber tener? ¿Cuáles son las ventajas? Actualmente utilizamos los anteriores ("com.google.android.gms: play-services-appinvite: ..."). El panel de control de FireBase no parece incluir tanta UI para análisis como Google Analytics. Sin mencionar las invitaciones a aplicaciones.

  3. Si la respuesta al # 1 es que necesito usar "getInvitationIntent", ¿tiene que estar en la actividad principal de la aplicación? ¿Tiene que estar en una actividad (tal vez broadcastReceiver?)?

  4. Parece que también es posible invitar a IOS (como se muestra here y here , usando "setOtherPlatformsTargetApplication"). ¿Es esto correcto? ¿Como funciona? ¿Qué sucede cuando un usuario de IOS hace clic en el enlace? ¿Qué se debe poner en el parámetro de "clientId" y de dónde lo obtengo?

  5. ¿G + tiene invitaciones a la aplicación? Si es así, ¿también tiene análisis?


Grandes preguntas. Haré mi mejor esfuerzo para responder a todo. Por favor, pregunte si necesita aclaración.

El seguimiento de Analytics requiere una ID de seguimiento que deberá establecer usando setGoogleAnalyticsTrackingId (String trackingId), que no veo en su ejemplo. Esta identificación de seguimiento se entrega a los eventos posteriores que registran los eventos de seguimiento analíticos para usted:

  • Cuando se envían invitaciones (tanto correo electrónico como sms).
  • Cuando el usuario invitado acepta la invitación, haga clic en el enlace o botón de invitación.
  • Cuando el desarrollador llama a getInvitation ()
  • Cuando el desarrollador llama a convertInvitation ()

Entonces, para responder a sus preguntas específicas, aquí va:

  1. Simplemente agregue su ID de seguimiento al constructor como se describe anteriormente, y se informarán todos los eventos de seguimiento. No hay necesidad de un enlace de enlace, eso es opcional en las invitaciones.
  2. Sí, el api de appinvites se copia a firebase mientras se conserva el original. Por ahora son exactamente iguales. Las mejoras futuras estarán en Firebase, por lo tanto, migre cuando tenga tiempo.
  3. Se llama a getInvitationIntent () en el resultado devuelto en la devolución de llamada de getInvitation (), por lo que la devolución de llamada debe estar dentro de una actividad. Además, dado que solo esperará una invitación inmediatamente después del lanzamiento, en realidad solo necesita verificar la actividad principal y cualquier actividad que se inicie desde los filtros de intención que se activan en el enlace. Suena como que no usas enlaces de enlace, así que solo la actividad principal. Por lo general, debe llamar a getInvitation () desde todas las actividades que pueden iniciarse directamente desde una invitación, así es como usted determina si su aplicación se inicia desde una invitación.
  4. Sí, las invitaciones pueden ir multiplataforma en ambas direcciones, iOS -> Android y Android -> iOS. Debe definir ambas aplicaciones en el mismo proyecto en console.developers.google.com, que es necesario para asociarlas. Si hay más de una aplicación iOS en el proyecto, esa llamada a la API es necesaria para desambiguar la aplicación iOS que está emparejada con la aplicación Android. El parámetro ClientID se genera en la consola cuando crea el Id. De cliente de OAuth usando el menú desplegable de la sección de credenciales.
  5. No hay invitaciones separadas de G +.

Respuestas:

  1. La documentación de firebase.google.com/docs/dynamic-links/android explica cómo ver los datos analíticos que se muestran directamente en la consola de Firebase. El paso crítico es seguir las instrucciones de configuración de Firebase , lo más importante:

// AÑADIR ESTO EN LA PARTE INFERIOR

aplique el complemento: ''com.google.gms.google-services''

La integración analítica de Firebase se ha optimizado a partir de la integración heredada que requería una identificación de seguimiento. Ahora con Firebase solo se necesita una configuración y una llamada a getInvitation (). No se requiere código adicional o ID de seguimiento. Recuerda que te lleva hasta 24 horas ver los resultados en la consola. Sin embargo, puede ver los mensajes que se envían de inmediato, lo que es una gran indicación de que está funcionando. Simplemente habilite el registro detallado como se describe en la documentación de Eventos de registro de Analytics .

  1. La documentación de Firebase y del desarrollador de Android para aplicaciones son idénticas.

  2. Sí, debe llamar a getInvitation () para obtener un seguimiento analítico y hacer la configuración como se describe anteriormente.

  3. Las aplicaciones de equivalencia de iOS y Android deben estar en el mismo proyecto. Simplemente muévalos a un solo proyecto en la consola Firebase. Solo puede eliminar uno de su proyecto existente y agregarlo al otro para crear un proyecto combinado. El cambio debe reflejarse al instante.