Prueba la integración
Recommended 👍
Easily test with our SDK wizard
Nota
If you prefer not to use our recommended wizard you can find detailed instructions here
Resolución de problemas de la integración del SDK para iOS
Las instalaciones y los eventos no se registran.
Podrían existir diversos motivos por los cuales no se registran las instalaciones y los eventos:
-
Formato de ID de aplicación incorrecto: si especificas un ID de aplicación en el formato incorrecto, las instalaciones y los eventos no se registran. Cuando configures el ID de aplicación en el archivo delegado, asegúrate de que esté compuesto solo por números. Si el formato del ID de aplicación es incorrecto, el registro muestra el siguiente error:
\[ERROR\] AppsFlyer: -\[AppsFlyerTracker validateAppID\] AppsFlyer Error: appleAppID should be a number!
-
ID de aplicación incorrecto: si especificas un ID de aplicación que no existe en tu cuenta, la instalación y los eventos no se registran. El registro muestra el siguiente error:
AppsFlyer: -[AppsFlyerHTTPClient sendRequestEventToServer:isRequestFromCache:appID:isDebug: completionHandler:]_block_invoke sent information to server, status = 404
The 404
es un error que indica que el SDK no puede encontrar la aplicación en tu cuenta.
-
Clave de desarrollador incorrecta: si especificas una clave de desarrollador incorrecta, las instalaciones y los eventos no se registran. El registro muestra el siguiente error:
AppsFlyer: -[AppsFlyerHTTPClient sendRequestEventToServer:isRequestFromCache:appID:isDebug:completionHandler:] _block_invoke sent information to server, status = 400
El código de error 400 indica que el SDK no puede autenticar la solicitud para rastrear instalaciones y eventos. Verifica que la clave de desarrollador sea la correcta. Además, asegúrate de que la clave de desarrollador contenga solo caracteres alfanuméricos.
Correcto:
[AppsFlyerLib shared].appleAppID = @"340954503";
Incorrecto:
[AppsFlyerLib shared].appleAppID = @"id340954503";
Incorrecto:
[AppsFlyerLib shared].appleAppID = @"com.appslyer.sampleapp";
El ID de aplicación y la clave de desarrollador son correctos, pero la instalación no se registra.
Situación
La aplicación contiene el ID de aplicación y la clave de desarrollador correctos, pero las instalaciones no se registran.
Causas posibles
El SDK no se inició correctamente. Asegúrate de llamar al método start
en applicationDidBecomeActive
:
- (void)applicationDidBecomeActive:(UIApplication *)application {
[[AppsFlyerLib shared] start];
}
func applicationDidBecomeActive(application: UIApplication) {
AppsFlyerLib.shared().start()
}
El registro muestra el mensaje "AppsFlyer dev key missing or empty. Aborting"
Situación
Está intentando ver instalaciones y eventos in-app en el registro. El registro muestra el mensaje "AppsFlyer dev key missing or empty. Aborting" (La clave de desarrollador de AppsFlyer no se encuentra o está vacía. Anulando).
Causas posibles
La clave de desarrollador no está definida. Asegúrate de configurarla en el AppDelegate en el método didFinishLaunchingWithOptions
:
[AppsFlyerLib shared].appsFlyerDevKey = @"<YOUR_DEV_KEY>";
AppsFlyerLib.shared().appsFlyerDevKey = "<YOUR_DEV_KEY>"
La instalación siempre se atribuye como orgánica
Situación
Estás realizando pruebas de atribución mediante enlaces de atribución. Implementaste el agente de escucha de conversión del SDK, pero el registro siempre muestra que la instalación es orgánica. Además, no hay ninguna instalación no orgánica registrada en el panel de control.
Causas posibles
- El enlace de atribución que usas es incorrecto. Consulta nuestra guía sobre enlaces de atribución.
- Asegúrate de que el dispositivo que usas para la prueba esté registrado.
Los ingresos no se registran correctamente.
Situación
Está probando eventos in-app con ingresos. Los eventos aparecen en el panel de control, pero los ingresos no se registran.
Causas posibles
El parámetro de ingresos no tiene el formato correcto. NO altere el formato del valor de ingresos de ninguna manera. No debe contener comas, signos de moneda ni texto. Por ejemplo, un evento generador de ingresos debería ser similar a 1234.56.
Recibo un código de error 404 al registrar una instalación o evento.
Situación
Está probando instalaciones y eventos in-app para ver si están atribuidos a la fuente de medios correcta. Sin embargo, aparece el código de respuesta 404 para la instalación y los eventos in-app. Ni la instalación ni los eventos in-app aparecen en el panel de control.
Causas posibles
Un código de respuesta 404 indica que el ID de aplicación es incorrecto. Consulta Las instalaciones y los eventos no se registran.
Recibo el código de respuesta 400 cuando registro instalaciones o eventos.
Situación
Está intentando probar eventos in-app en el registro. Cuando activa eventos, ve el código de respuesta 400 en los registros.
Causas posibles
Esto podría indicar un problema con la clave de desarrollador. Verifica que la clave de desarrollador sea la correcta. Además, asegúrate de que la clave de desarrollador contenga solo caracteres alfanuméricos. Consulta Las instalaciones y los eventos no se registran.
Recibo el código de respuesta 400 cuando registro instalaciones o eventos.
Situación
Estás intentando probar las instalaciones y otros eventos de conversión en el registro. Cuando activas estos eventos, ves la respuesta 403 (prohibido) en los registros.
Causas posibles
This might be because you have the Zero package, which does not include attribution data; only data on clicks and impressions. To start receiving attribution data, learn more about the different AppsFlyer packages, and update as needed. You can also contact our customer engagement team at [email protected] if you have questions about our packages.
My SDK connection to AppsFlyer is secured by TLS 1.0 or 1.1
To ensure that the connection to AppsFlyer is secured by TLS 1.2 or 1.3 and not by lower TLS versions use the appsflyersdk.com
endpoint without a prefix. Specifically call the setHost function in the following way: setHost("","[appsflyersdk.com](http://appsflyersdk.com/)")
Crear una aplicación de depuración de iOS
OPCIONAL
Puedes utilizar las capacidades de configuración de compilación de Xcode para configurar una aplicación de depuración fácil de usar. Te permitirá cambiar entre tus aplicaciones de depuración y producción tocando las condiciones de compilación activas de Xcode.
Nota
Si no te importa mezclar datos de producción con tráfico de prueba, puedes pasar a probar la integración. Todas las pruebas se pueden realizar tanto para aplicaciones de producción como de depuración.
Esto se logra empleando una configuración definida por el usuario en la configuración de compilación de tu proyecto y exponiéndola a través de una propiedad info.plist
.
Paso 1: Agregar una aplicación de depuración a AppsFlyer
Add a new pending iOS app to AppsFlyer or ask a team member with dashboard access to add it. Choose any available app ID–You will need it in step 3. Make sure the ID is 9 digits and starts with four 1s, for example, 111167538.
Paso 2: Agregar una configuración definida por el usuario
- En Xcode, en la vista del navegador de archivos, selecciona la raíz de tu proyecto y ve a Build Settings.
- Haz clic en + en la barra de herramientas y selecciona Agregar configuración definida por el usuario. En este caso, la llamamos
AF_APP_ID
. - Expandir la configuración definida por el usuario recién creada:
- Configura la configuración condicional de Depuración en el ID de la aplicación de prueba (que se menciona en el paso 1)
- Configura la configuración condicional Versión en el ID de aplicación de tu aplicación de producción.
Paso 3: Exponer los ID de las aplicaciones a través de info.plist
En el proyecto, ve al info.plist
y añade una nueva propiedad (llamada AFAppID
en este caso). Establece su valor en $(AF_APP_ID)
(basado en el nombre de la configuración definida por el usuario en el paso 2).
Paso 4: Recuperar y configurar el ID de la app
Para acceder y usar el ID de aplicación durante la inicialización del SDK, agrega el siguiente código a didFinishLaunchingWithOptions
En tu AppDelegate
:
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
// ...
guard let appID : String = Bundle.main.object(forInfoDictionaryKey: "AFAppID") as? String else {
fatalError("Cannot find app ID")
}
AppsFlyerLib.shared().appleAppID = appID
// ...
return true
}
Paso 5: Ejecutar la aplicación usando la configuración de compilación de depuración
Para cambiar la configuración de compilación activa:
- Ve a Producto > Esquema > Editar esquema....
- Selecciona Ejecutar y cambia la Configuración de compilación a Depurar o Lanzar, según sea necesario.
Ahora, cuando uses la configuración de depuración para crear tu aplicación, Xcode utilizará el ID de aplicación de depuración que configuraste en el paso 2.
Actualizado hace aproximadamente 2 meses