Documento
Tras integrar el SDK de Singular en su aplicación o crear una integración de servidor a servidor, es esencial verificar que Singular recibe datos antes de poner en marcha la nueva versión.
Guía para |
Desarrolladores |
Requisitos previos |
- Implemente el SDK de Singular o configure la integración de servidor a servidor (S2S) para su aplicación.
- Asegúrese de que dispone de un dispositivo móvil para realizar pruebas si tiene previsto utilizar la consola de pruebas.
|
Singular proporciona tres herramientas principales para probar su integración:
-
Consola de pruebas: Pruebe las funciones en tiempo real a medida que las implementa.
-
Exportar registros: Descargue datos a nivel de usuario con al menos una hora de retraso.
-
Informe de auditoría: Identifica automáticamente cualquier problema en su integración.
Uso de la consola de pruebas
La consola de pruebas le permite transmitir datos en directo y en tiempo real añadiendo y seleccionando un dispositivo de prueba. Tenga en cuenta que no proporciona informes históricos. Para empezar, asegúrese de tener lo siguiente:
-
Un dispositivo de prueba limpio: Utilice un dispositivo en el que nunca se haya instalado la aplicación de prueba.
-
Una lista de eventos y atributos para probar: Prepare los eventos y atributos que planea verificar.
-
Para iOS: Tenga en cuenta si aparecerá el aviso App Tracking Transparency (ATT), ya que esto determinará si utiliza el identificador IDFV o IDFA para las pruebas.
1 |
Añadir un dispositivo de prueba
Para añadir un dispositivo a la consola de pruebas:
- En la plataforma Singular, vaya a Herramientas de desarrollador > Consola de pruebas.
-
Haga clic en Añadir dispositivo.
- Indique el tipo de dispositivo. Para Android, cuando esté disponible, recomendamos Google Advertising ID (GAID/aifa), AppSetID (asid) o AndroidID (andi) en ese orden. Para dispositivos iOS, recomendamos utilizar el IDFA cuando esté disponible.
-
Proporcione su ID de dispositivo.
Captura del ID de dispositivo
Para Android, aconsejamos utilizar el ID de publicidad de Google (GAID/aifa). La aplicación Singular Device Assist(Android) puede ayudarte a encontrarlo.
El aifa también se encuentra en el LogCat de Android cuando está activado el registro para la configuración de Singular.
SingularConfig config = new SingularConfig(SdkKey, SdkSecret) .withLoggingEnabled() .withLogLevel(1);
Ejemplo de salida LogCat:
2023-06-01 15:48:32.224 27442-27560/com.singular.test D/Singular: DeviceInfo [worker] - andi : 8868adc2f7ffffff
2023-06-01 15:48:32.224 27442-27560/com.singular.test D/Singular: DeviceInfo [worker] - asid : 12dc3652-5e46-f2bb-a93a-b3c092ffffff
2023-06-01 15:48:32.224 27442-27560/com.singular.test D/Singular: DeviceInfo [worker] - aifa : 3bbc76b0-cebb-4a9f-b6ec-10ca1affffff
Para iOS, puede utilizar IDFA cuando el marco ATT está en su lugar y el seguimiento está permitido. Asegúrese de que también está implementada la opción Wait For Tracking Authorization With Timeout Interval. Para todos los demás casos, utilice IDFV.
El IDFA puede capturarse utilizando uno de los métodos que se indican a continuación:
- Utilice la aplicación Singular Device Assist(iOS) de la App Store. Asegúrese de dar permiso para el seguimiento.
- Registrando el IDFA en la consola de depuración de Xcode
//Example in Swift
print("IDFA", ASIdentifierManager.shared().advertisingIdentifier.uuidString)
//Example in Objective-C
NSString *IDFA = [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];
NSLog(@"IDFA: %@", IDFA);
IDFV puede ser capturado en la consola de depuración de Xcode.
//Example in Swift
print("IDFV", UIDevice.current.identifierForVendor!.uuidString)
//Example in Objective-C
NSString *IDFV = [[[UIDevice currentDevice] identifierForVendor] UUIDString];
NSLog(@"IDFV: %@", IDFV);
-
Añade un Nombre de Dispositivo distinto y haz clic en Guardar Dispositivo.
|
2 |
Prueba de inicialización
Lo primero que debe probar es si su integración SDK se inicializa correctamente y es capaz de enviar información a Singular (es decir, el evento que está buscando se llama: sesión). Esto permite a Singular iniciar el seguimiento de la atribución para esta aplicación.
Para probar la inicialización:
-
En el registro de eventos, seleccione el nombre de su dispositivo en el menú desplegable Dispositivos. Busque el indicador 🟢 Live.
- Inicializa la app desde tu plataforma de pruebas / abre la app.
-
Cuando veas un evento de sesión, habrás inicializado correctamente Singular SDK.
¿Cómo leo el registro de eventos en la consola de pruebas?
Después de haber registrado un dispositivo y enviado algunos eventos, los eventos empiezan a aparecer en el registro de eventos de la página de la Consola de Pruebas.
Haz clic en una fila para ver todos los detalles del evento enviado desde la aplicación.
¿Por qué no aparecen eventos en el registro de eventos de la Consola de Pruebas?
Si ha registrado un dispositivo de prueba y está siguiendo la guía para probar la integración del SDK, pero no aparecen filas en el registro de eventos, compruebe lo siguiente:
-
La Consola de Pruebas sólo muestra eventos en directo, es decir, cuando estás en la página con un dispositivo seleccionado y el indicador 🟢 En directo. No busca eventos históricos del dispositivo. Si disparas eventos antes de seleccionar un dispositivo no aparecerá en la consola.
- Asegúrate de haber abierto la app en el dispositivo de prueba (para ver una sesión de usuario).
- Asegúrate de haber creado algunos eventos in-app (si quieres probar tus eventos).
- Comprueba que has introducido el ID de dispositivo correcto.
- Compruebe que está utilizando el tipo de ID de dispositivo correcto (para iOS, si no ve un mensaje ATT, no puede utilizar IDFA).
¿Por qué falta el evento _InstallReferrer cuando se prueba una aplicación con Singular SDK 12.0.0 y superior?
A partir de Singular SDK 12.0.0, no es necesario probar el evento _InstallReferrer. Una vez que su aplicación es empujada a la tienda, nuestro SDK colocará los datos _InstallReferrer en la primera sesión. Usted sólo necesita ver si la sesión aparece en la Consola de Pruebas.
Si utiliza versiones anteriores del SDK de Android, deberá comprobar el evento _InstallReferrer en la consola de pruebas.
¿Cómo puedo restablecer un dispositivo y borrar su información de atribución para volver a utilizarlo para probar la atribución de instalaciones?
Si desea volver a probar la integración del SDK con el mismo dispositivo, debe eliminar todos los datos almacenados en caché local del dispositivo, además de borrar la atribución del dispositivo en la plataforma Singular.
Pasos para dispositivos Android
- Cierra la aplicación y confirma que no se está ejecutando (utiliza Forzar detención desde el menú Ajustes si tienes la opción).
- Accede al menú Ajustes tocando el icono de la rueda en la ventana de notificaciones o en el menú Aplicaciones.
- Ve a Aplicaciones, selecciona la aplicación que estás probando, mantén pulsada la aplicación y selecciona Información de la aplicación.
- Selecciona Almacenamiento y, a continuación, Borrar caché y Borrar datos.
-
En la Consola de Pruebas Singular, selecciona el dispositivo en el menú desplegable y haz clic en el icono Editar (Lápiz). En el estante que se abre, haga clic en Eliminar dispositivo para que nuestro sistema elimine la atribución de este dispositivo.
Pasos para dispositivos iOS
- Cierre la aplicación y desinstálela.
-
Abra la consola de pruebas, busque su dispositivo en el menú desplegable y haga clic en el icono Editar. En el estante que se abre, haga clic en Eliminar dispositivo para que nuestro sistema elimine esta atribución de dispositivo.
Consejo: Pruebas con ventanas de inactividad de reenganche
La ventana de inactividad es un ajuste que determina el tiempo que el usuario tiene que estar inactivo antes de ser elegible para la atribución de reconexión. Si está probando la atribución de reconexión antes de lanzar campañas, una ventana de inactividad se lo pondrá más difícil. Esta es la razón por la que los dispositivos de prueba (dispositivos que han sido añadidos a la Consola de Pruebas y tienen el icono del ojo activado) están exentos de la ventana de inactividad.
Estoy probando con IDFA y no consigo que iOS aparezca en la consola de pruebas. ¿Qué debo hacer?
Comprueba que tu IDFA es correcto. Puedes hacer esto de varias maneras:
- Utilice la aplicación Singular Device Assist (iOS) de la App Store. Asegúrate de dar permiso para el rastreo.
- Registrando el IDFA en la consola de depuración de Xcode
- Si ya has hecho una prueba hace más de una hora puedes ir a exportar logs y ver si se ha capturado algún evento. Puede extraer el IDFA/IDFV de los registros de exportación. Cuando lo haga desde el registro de exportación intente añadir "App Tracking Transparency status" al informe. 0 - Indeterminado, significa que el aviso ATT no se mostró (normalmente porque la configuración general lo bloquea o hubo un tiempo de espera). Puede obtener más información aquí
Otras cosas que puede comprobar:
-
Compruebe la configuración del dispositivo: Asegúrese de que el identificador de publicidad del dispositivo (IDFA) no ha sido limitado. Ve a Ajustes Privacidad Rastreo en el dispositivo y asegúrate de que la opción "Permitir que las Apps soliciten rastrear" está activada. Asegúrate de que has visto el aviso de ATT mientras realizabas la prueba. Si no lo viste, entonces no estamos rastreando el IDFA.
-
Restablecer Identificador de Publicidad: Si el dispositivo ha sido utilizado para pruebas anteriormente, restablezca el identificador de publicidad. Vaya a Ajustes Privacidad Seguimiento y restablezca el IDFA.
-
Implementación correcta: Verifica que el SDK de Singular se ha integrado correctamente en tu app y que estás utilizando la última versión del SDK.
-
Espere a que aparezcan los datos: En realidad no debería haber ningún retraso en la aparición de datos en la consola de pruebas. Si está esperando más de un minuto, algo no se ha configurado correctamente.
-
Revise la inicialización del SDK: Confirma que Singular SDK está inicializado correctamente en el código de tu aplicación, particularmente en AppDelegate o SceneDelegate dependiendo de la arquitectura de tu aplicación.
-
Compruebe si hay errores: Busca cualquier error en la consola de Xcode que pueda indicar problemas con la inicialización del SDK o el seguimiento de eventos.
Si ha seguido estos pasos y el problema persiste, puede ser necesario revisar la guía de integración detallada o consultar con el ingeniero de integración de Singular para obtener más ayuda.
|
3 |
Pruebe funciones específicas
Prueba de ID de usuario personalizado
Si su integración SDK envía un ID de usuario personalizado a Singular, a continuación se indica cómo probarlo.
- Registre el dispositivo en la Consola de Pruebas.
- Abra la aplicación.
- Si es necesario, en su aplicación, active una acción que envíe el ID de usuario (como iniciar sesión). La naturaleza de la acción depende de su implementación.
-
En el siguiente evento enviado a Singular, amplíe los detalles del evento en la consola de pruebas y compruebe que los detalles incluyen un valor para "custom_user_id".
Si el ID de usuario no aparece:
- Comprueba que el método que establece el ID de usuario se llama realmente en tu aplicación cuando quieres que se llame.
- Puede añadir un evento Singular SDK y llamarlo "setting custom user id" para que el evento aparezca en la consola de pruebas.
Eventos de prueba
Si ha implementado el seguimiento de eventos o de ingresos en su integración SDK, siga las siguientes instrucciones para probarlos.
Para más información sobre eventos, consulte
Para cada evento que haya implementado en su integración SDK:
-
Activa el evento desde la aplicación y comprueba que aparece en el registro de la consola de pruebas con el nombre que le diste al evento.
-
Si envía datos adicionales con el evento, haga clic en la fila del evento en la consola de pruebas para ampliar los detalles del evento y asegúrese de que los datos se incluyen en"Datos del evento".
Si el evento no aparece, es posible que la aplicación se abriera antes de que el dispositivo estuviera completamente registrado en la Consola de Pruebas. Compruebe los registros de exportación del evento.
Prueba de ingresos
Para cada tipo de evento de ingresos que haya implementado en su integración SDK:
- Activa el evento de ingresos en la aplicación y comprueba el registro de eventos. Debería aparecer una fila con el nombre del evento.
Nota: Si no ha dado un nombre personalizado al evento, recibirá el nombre predeterminado para los eventos de ingresos, "__iap__".
-
Haga clic en la fila para ampliarla y asegúrese de que se han recibido la divisa ("pcc"), el importe ("r") y cualquier otro detalle del evento.
Pruebe la vinculación profunda
Si ha implementado la vinculación profunda en su integración SDK, siga las siguientes instrucciones para probar su funcionalidad de vinculación profunda.
1. 1. Configure un destino de prueba
En la plataforma Singular, vaya a Configuración > Aplicaciones, busque la aplicación y añada un destino de enlace profundo.
El destino debe ser uno de los destinos de deep link que el código handler de tu integración SDK pueda reconocer y manejar.
2. Cree un enlace para probar
Ahora que tiene un destino al que enlazar, puede crear un enlace profundo.
- Vaya a Atribución > Gestionar enlaces y seleccione la aplicación en la barra lateral.
- Haga clic en Crear enlace.
- En Tipo de enlace, seleccione "Fuente personalizada", y en Nombre de fuente, seleccione "Correo electrónico".
- Asigne un nombre al enlace.
- Haz clic en la sección Configuración del enlace y redireccionamientos para ampliarla.
- Seleccione el destino que acaba de crear en la lista desplegable Enlace profundo.
- En el cuadro de texto Destino alternativo para otras plataformas, introduzca la URL de un sitio web.
-
Haga clic en Generar y copie el enlace del campo Enlace de seguimiento de clics.
3. Pruebe el enlace
Para probar el enlace:
- Asegúrate de que la aplicación está instalada en tu dispositivo de prueba.
- Envía por correo electrónico el enlace copiado a tu dispositivo de prueba.
- Desde el dispositivo, abra el correo electrónico y haga clic en el enlace. La aplicación debería abrirse y mostrar la página o el contenido deseado.
- Si está utilizando la consola de pruebas SDK durante la prueba, debería ver el enlace profundo en los argumentos de la sesión:
Forma alternativa de probar el enlace (sólo Android):
Probar los enlaces profundos de Android usando ADB (Android Debug Bridge) es una práctica común para verificar que tu aplicación maneja los enlaces profundos correctamente. He aquí una guía paso a paso sobre cómo configurar y utilizar ADB para probar enlaces profundos:
Requisitos previos
Probando Deep Links con ADB
-
Utilice ADB para enviar el enlace profundo: Para probar un enlace profundo, utilice el comando adb shell am start. Este comando simula hacer clic en un enlace profundo en un navegador u otra aplicación.
La sintaxis general es:
adb shell am start -W -a android.intent.action.VIEW -d "your_deep_link_url"
-
Desde el terminal de tu ordenador lanza el enlace:
adb shell am start -W -a android.intent.action.VIEW -d "https://seteam.sng.link/Bnuq6/i428?_dl=androidkotlinapplication%3A%2F%2Fmy_deeplink"
Solución de problemas
"Cuando mi aplicación ya se está ejecutando, un enlace profundo abre una nueva instancia de la aplicación en lugar de cambiar a la existente". Para evitarlo, edita tu archivo de manifiesto y añade lo siguiente a tu actividad:
android:launchMode="singleTask"
Consulta la documentación <activity> de Google para obtener más información sobre las opciones launchMode.
Probar la vinculación profunda diferida
Para confirmar que la vinculación profunda diferida está habilitada:
-
Compruebe el evento de sesión en la Consola de pruebas.
- Configure un destino de prueba y un enlace como se explica más arriba en Probar la vinculación profunda.
- Desinstale la aplicación de su dispositivo de prueba.
- Restablece el identificador de publicidad de tu dispositivo.
- Añada el nuevo identificador a la consola de pruebas.
-
Envíe por correo electrónico el enlace profundo al dispositivo y haga clic en el enlace.
-
El enlace debería llevarte a la tienda de aplicaciones. Nota: Si está realizando pruebas en una compilación local, no instale la versión de la tienda, en su lugar cargue la aplicación desde Android Studio o Xcode. Después de instalar la aplicación y abrirla, debería ver la página o el contenido deseado.
- Si utiliza la consola SDK para la prueba, debería encontrar el valor del enlace profundo diferido en el primer evento de sesión.
Prueba de seguimiento de desinstalación
Si ha implementado el seguimiento de desinstalación en su integración SDK, siga las instrucciones siguientes para probarlo.
Probar el seguimiento de desinstalación es más complicado que probar otras funciones del SDK, porque Singular depende de los servicios de Google/iOS para informar de la desinstalación, y el proceso lleva cierto tiempo. No puede ver el evento de desinstalación en la plataforma Singular en tiempo real, y no puede utilizar la consola de pruebas para ello.
Antes de realizar la prueba, asegúrese de que está enviando su token FCM/APNS a Singular (consulte Android SDK: Seguimiento de desinstalaciones y iOS SDK: Seguimiento de desinstalaciones).
Además, compruebe que ha introducido su clave de servidor FCM (para Android) o su certificado push de iOS en la página de configuración de la aplicación.
Para probar el seguimiento de desinstalaciones
- Utilizando un dispositivo real (no un emulador), instale la aplicación en el dispositivo.
- Abra la aplicación para que se registre la instalación.
- Desinstale la aplicación.
-
Para comprobar si Singular ha recibido el evento de desinstalación, tiene varias opciones:
Nota: Mientras espera a que se valide el evento de desinstalación, no restablezca el ID del dispositivo ni reinstale la aplicación.
|
Nota: la consola de pruebas no es compatible con las aplicaciones iOS TestFlight. Una compilación de TestFlight restablece el IDFV en cada inicio de la aplicación y no se pueden capturar eventos en directo.
Uso de los registros de exportación
También puede utilizar la función Atribución > Exportar registros para verificar los resultados de las pruebas con retraso. La función Exportar registros le permite descargar manualmente datos a nivel de usuario, como conversiones (instalaciones), eventos, etc.
Mejores prácticas:
- Antes de obtener los datos, vuelva a comprobar que la Fecha, la Aplicación y el sitio están seleccionados correctamente.
- Los datos de los registros de exportación tienen un retraso de ~3 horas.
- Para obtener más ayuda, consulte esta pregunta frecuente.
Ejecución de una auditoría SDK
Singular ofrece un informe de auditoría SDK que comprueba sus integraciones SDK y S2S para ver si están correctamente implementadas. La auditoría genera una lista de todos los problemas que encuentra, con consejos para solucionarlos. Para utilizar el informe de auditoría SDK
1 |
Ejecute un informe de auditoría del SDK
Vaya a Herramientas de desarrollo > Consola de pruebas y haga clic en Ejecutar auditoría en la esquina superior derecha.
|
2 |
Descargue el informe y solucione los problemas pertinentes
Una vez finalizada la ejecución del informe, puede descargarlo en formato CSV.
El informe es una lista de los problemas encontrados en sus integraciones SDK y S2S. No todos los problemas son críticos o relevantes, dependiendo de las funciones que haya implementado.
Revise los problemas del informe y corríjalos según los consejos del campo Descripción del error.
Para problemas de tipo advertencia/información: Compruebe el Nombre de validación y vea si se trata de una función opcional del SDK que ha decidido no implementar, como la vinculación profunda diferida (DDL). Si es así, puede ignorar el mensaje de error.
¿Cómo funciona la auditoría del SDK y sobre qué datos se ejecuta?
La auditoría del SDK examina los datos recibidos de sus aplicaciones en los últimos 3 días. Comprueba si los datos tienen el aspecto esperado, por ejemplo
- Si la aplicación informa de las sesiones de usuario (ésta es la funcionalidad más básica de una integración SDK/S2S y es lo que permite a Singular realizar un seguimiento de la atribución).
- Si la aplicación informa de eventos e ingresos dentro de la aplicación
- Si los ingresos se reportan utilizando las mejores prácticas
- Si está habilitada la vinculación profunda diferida
¿Cómo puedo leer el informe de auditoría del SDK?
El informe es una lista de los problemas que se han encontrado en sus integraciones SDK y S2S.
Columna |
Descripción |
Nombre de la aplicación |
El nombre de la aplicación tal y como está configurada en Singular. |
Paquete de aplicaciones |
El paquete de aplicaciones configurado en Singular, por ejemplo, com.example.appname. |
Plataforma |
iOS, Android o Amazon. |
Versión de la aplicación |
El número de versión de la aplicación, si existe. |
Nombre de validación |
El área de la integración en la que se ha encontrado un problema, por ejemplo, "ID de usuario personalizado" o "Eventos de ingresos". |
Tipo |
La gravedad del problema:
-
Error: Este problema impide que la integración funcione y debe solucionarlo antes de lanzar la aplicación. Por ejemplo, Singular no recibe sesiones de usuario de la aplicación. Sin sesiones de usuario, no podemos realizar la atribución.
-
Atención: La integración puede funcionar sin esto, pero debes solucionarlo si quieres seguir las mejores prácticas y sacar el máximo partido del rastreador de atribución de Singular. Por ejemplo, su aplicación no está enviando un ID de usuario personalizado. El ID de usuario personalizado es una función opcional pero muy recomendable.
-
Información: Este problema se refiere a una funcionalidad opcional que puede haber decidido no implementar en su integración. Por ejemplo, la vinculación profunda diferida (DDL) no está activada en su aplicación. Puede que DDL simplemente no sea relevante para su estrategia de marketing.
|
Descripción del error |
Más información sobre el problema y cómo solucionarlo. |
|