AppsFlyerLib

Resumen General

AppsFlyerLib es la clase principal del SDK de AppsFlyer para iOS y encapsula la mayoría de los métodos.

Para importar AppsFlyerLib:

// AppDelegate.h
#import <AppsFlyerLib/AppsFlyerLib.h>

@interface AppDelegate : UIResponder <UIApplicationDelegate, AppsFlyerLibDelegate>

@end
import AppsFlyerLib

Regresa al índice de referencia del SDK.

Propiedades

advertisingIdentifier (read-only)

Declaración de propiedad

@property(nonatomic, strong, readonly) NSString *advertisingIdentifier

Descripción
El SDK de AppsFlyer recopila de Apple el advertisingIdentifier if the AdSupport.framework incluido en el SDK.
Puedes deshabilitar este comportamiento configurando disableAdvertisingIdentifier to true.

TipoNombre
NSStringadvertisingIdentifier

anonymizeUser

Declaración de propiedad

@property(atomic) BOOL anonymizeUser;

Descripción
Registro de exclusión opcional para un usuario específico

TipoNombre
boolanonymizeUser

appInviteOneLinkID

Declaración de propiedad

@property(nonatomic, strong, nullable, setter = setAppInviteOneLink:) NSString * appInviteOneLinkID

Descripción
Configura tu ID de OneLink desde la configuración de OneLink. Se usa en las invitaciones de usuarios para generar un OneLink.

TipoNombre
NSStringappInviteOneLinkID

appleAppID

Declaración de propiedad

@property(nonatomic, strong) NSString * appleAppID

Descripción
Esta propiedad se usa para configurar el ID de Apple de tu app (se toma de la página de la app en iTunes Connect)

TipoNombre
NSStringappleAppID

appsFlyerDevKey

Declaración de propiedad

@property(nonatomic, strong) NSString * appsFlyerDevKey

Descripción
Esta propiedad se usa para configurar tu clave de desarrollador de AppsFlyer.

TipoNombreDescripción
NSStringappsFlyerDevKeyTu clave de desarrollador de AppsFlyer.

currencyCode

Declaración de propiedad

@property(nonatomic, strong, nullable) NSString *currencyCode

Descripción
En el caso de eventos de compra in-app, puedes configurar el código de divisa con el que el usuario ha comprado.
El código de divisa es un código de 3 letras según las normas ISO.

Ejemplo de uso

[[AppsFlyerLib shared] setCurrencyCode:@"USD"];
AppsFlyerLib.shared().currencyCode = "USD"

customData

📘

Configuración customData before first launch will have the additional data included in installs, sessions, as well as in-app events.

Declaración de propiedad

@property(nonatomic, strong, nullable, setter = setAdditionalData:) NSDictionary * customData

Descripción
Úsalo para agregar datos personalizados a la carga útil de los eventos. Lo recibirás en los reportes de raw data.

TipoNombre
NSDictionarycustomData

customerUserID

Declaración de propiedad

@property(nonatomic, strong, nullable) NSString * customerUserID

Descripción
En caso de que uses tu propio ID de usuario en tu aplicación, puedes configurar esta propiedad en ese ID.
Te permite hacer una referencia cruzada de tu propio ID único con el ID único de AppsFlyer y los ID de otros dispositivos

TipoNombre
NSStringcustomerUserID

deepLinkDelegate

Declaración de propiedad

@property(weak, nonatomic) id<AppsFlyerDeepLinkDelegate> deepLinkDelegate

Descripción
Propiedad delegada de un objeto, que se ajusta al protocolo DeepLinkDelegate e implementa sus métodos.

TipoNombre
DeepLinkDelegatedeepLinkDelegate

Ejemplo de uso

AppsFlyerLib.shared().deepLinkDelegate = self

deepLinkTimeout

Descripción
Tiempo de espera de solicitud para Deferred Deeplinking.

Unidades en milisegundos.

Declaración de propiedad

@property(nonatomic) NSUInteger deepLinkTimeout
TipoNombre
NSUIntegerdeepLinkTimeout

delegate

Descripción
Delegado de AppsFlyer. Consulta AppsFlyerLibDelegate.
Declaración de propiedad

@property (nonatomic, weak) id<AppsFlyerLibDelegate> delegate;
TipoNombre
AppsFlyerLibDelegatedelegate

disableAdvertisingIdentifier

Declaración de propiedad

@property (nonatomic) int disableAdvertisingIdentifier;

Descripción
si AdSupport.framework no está deshabilitado, el SDK recopila el advertisingIdentifierde Apple.
Puedes deshabilitar este comportamiento configurando la siguiente propiedad como YES.

TipoNombre
NSStringadvertisingIdentifier

disableAppleAdsAttribution

Declaración de propiedad

@property(nonatomic) BOOL disableAppleAdsAttribution

Descripción
Disables AdServices framework-based attribution for Apple Search Ads.

TipoNombre
booldisableAppleAdsAttribution

disableCollectASA

Declaración de propiedad

@property(atomic) BOOL disableCollectASA;

Descripción
Disables the collection of data from the iAd Framework. This API has no effect in v6.12.3 and above, where the iAd Framework is no longer in use.

TipoNombre
booldisableCollectASA

disableIDFVCollection

Declaración de propiedad

@property(nonatomic) BOOL disableIDFVCollection;

Descripción
Para deshabilitar la recopilación de identificadores de proveedores de aplicaciones (IDFV), configura disableIDFVCollection to YES.

TipoNombre
booldisableIDFVCollection

disableSKAdNetwork

Declaración de propiedad

@property(nonatomic) BOOL disableSKAdNetwork

Descripción

TipoNombre
booldisableSKAdNetwork

facebookDeferredAppLink

Declaración de propiedad

@property (nonatomic, nullable) int *facebookDeferredAppLink;

Descripción
Configura manualmente el enlace diferido de la aplicación de Facebook.

TipoNombre
NSStringadvertisingIdentifier

host (read-only)

Declaración de propiedad

@property(nonatomic, strong, readonly) NSString *host

Descripción
Esta propiedad acepta un valor de secuencia que representa el nombre del host para todos los puntos de conexión. Para establecer el host, utiliza setHost.

Para usar el punto de conexión predeterminado del SDK: establece el valor en nil.

TipoNombre
NSStringhost

hostPrefix (read-only)

Declaración de propiedad

@property(nonatomic, strong, readonly) NSString *hostPrefix

Descripción
Esta propiedad acepta un valor de secuencia que representa el nombre del host para todos los puntos de conexión. Para establecer el host, utiliza setHost.

TipoNombre
NSStringhostPrefix

isDebug

Declaración de propiedad

@property(nonatomic) BOOL isDebug;

Descripción
Imprime mensajes del SDK en el registro de la consola. Debería estar deshabilitado para compilaciones de producción.

TipoNombre
boolisDebug

isStopped

Declaración de propiedad

@property(atomic) BOOL isStopped;

📘

Reinicio del SDK

Establecido isStopped = true y luego configura isStopped = false

No es necesario llamar a start()

Descripción
API to shut down all SDK activities. This will disable all requests from the SDK except for those related to fetching SKAd Network data from the server.

TipoNombre
boolisStopped

minTimeBetweenSessions

Declaración de propiedad

@property(atomic) NSUInteger minTimeBetweenSessions;

Descripción
Configura un valor personalizado para el tiempo mínimo requerido entre sesiones.

Argumentos de entrada

TipoNombreDescripción
NSUIntegerminTimeBetweenSessionsEstablece el tiempo mínimo que debe transcurrir entre dos lanzamientos de la aplicación para que cuenten como dos sesiones separadas. Si no se establece, el tiempo mínimo predeterminado entre sesiones es de 5 segundos

oneLinkCustomDomains

Declaración de propiedad

@property(nonatomic, nullable) NSArray<NSString *> *oneLinkCustomDomains;

Descripción
Para anunciantes que usan OneLinks personalizados.

TipoNombre
NSArray<NSString *>oneLinkCustomDomains

phoneNumber

Declaración de propiedad

@property(nonatomic, nullable) NSString *phoneNumber

Descripción

TipoNombre
NSStringphoneNumber

resolveDeepLinkURLs

Declaración de propiedad

@property(nonatomic, nullable) NSArray<NSString *> *resolveDeepLinkURLs;

Descripción

TipoNombre
NSArray<NSString *>resolveDeepLinkURLs

Ejemplo de uso
Algunos servicios de terceros, como los proveedores de servicios de correo electrónico (ESP), encapsulan enlaces en los correos electrónicos con sus propios dominios de registro de clics. Algunos incluso te permiten configurar tus propios dominios de registro de clics. Si OneLink está encapsulado en tales dominios, su funcionalidad podría verse limitada.

Para superar este problema, usa setResolveDeepLinkURLs para obtener el OneLink de dominios de clic que inician la aplicación. Asegúrate de llamar a esta API antes de la inicialización del SDK.

Por ejemplo, tienes tres dominios de clic que redirigen a tu OneLink, que es https://mysubdomain.onelink.me/abCD. Utiliza esta API para obtener el OneLink al que redireccionan tus dominios de clic. Este método API recibe una lista de dominios que el SDK resuelve.

[AppsFlyerLib shared].resolveDeepLinkURLs = @[@"example.com",@"click.example.com"];
AppsFlyerLib.shared().resolveDeepLinkURLs = ["example.com", "click.example.com"]

Esto te permite usar tu dominio de clic mientras conservas la funcionalidad de OneLink. Los dominios de clics son responsables de iniciar la aplicación. A su vez, la API obtiene el OneLink de estos dominios de clics y, a continuación, tú puedes usar los datos de este OneLink para establecer enlaces profundos y personalizar el contenido de los usuarios.

sharingFilter

Declaración de propiedad

@property(nonatomic, nullable) NSArray<NSString *> *sharingFilter;

Descripción

TipoNombre
NSArray<NSString *>sharingFilter

shouldCollectDeviceName

Declaración de propiedad

@property(nonatomic) BOOL shouldCollectDeviceName;

Descripción
Configura este indicador en YES para recopilar el nombre actual del dispositivo (por ejemplo, "Mi iPhone").

TipoNombre
boolshouldCollectDeviceName

useReceiptValidationSandbox

Declaración de propiedad

@property (nonatomic) BOOL useReceiptValidationSandbox;

Descripción
Validación de recibos de compra in-app en el entorno de Apple (producción o entorno de pruebas).

TipoNombre
booluseReceiptValidationSandbox

useUninstallSandbox

Declaración de propiedad

@property (nonatomic) BOOL useUninstallSandbox;

Descripción
Configura este indicador para probar la desinstalación en el entorno de Apple (producción o entorno de pruebas).

TipoNombre
booluseUninstallSandbox

Métodos

addPushNotificationDeepLinkPath

Firma de método

- (void)addPushNotificationDeepLinkPath:(NSArray<NSString *> *)deepLinkPath;
addPushNotificationDeepLinkPath(deepLinkPath: [String])

Descripción
Agrega un conjunto de claves, que se usan para componer la ruta de la clave para resolver el enlace profundo desde la carga útil de las notificaciones push.

Argumentos de entrada

TipoNombre
NSArray<NSString *>deepLinkPath

Devoluciones
void.

Ejemplo de uso
Configuración básica:

[AppsFlyerLib shared] addPushNotificationDeepLinkPath:@[@"af_push_link"]]
AppsFlyerLib.shared().addPushNotificationDeepLinkPath(["af_push_link"])

Configuración avanzada:

[AppsFlyerLib shared] addPushNotificationDeepLinkPath:@[@"deeply", @"nested", @"deep_link"]]
AppsFlyerLib.shared().addPushNotificationDeepLinkPath(["deeply", "nested", "deep_link"])

Esta llamada coincide con la siguiente estructura de carga útil:

{
  "deeply": {
      "nested": {
          “deep_link”: “https://yourdeeplink2.onelink.me”
      }
  }
}

appendParametersToDeepLinkingURL

Firma de método

(void)appendParametersToDeepLinkingURLWithString:(NSString *)containsString parameters:(NSDictionary<NSString *, NSString*> *)parameters;
appendParametersToDeeplinkURL(contains: String, parameters: [String : String])

Descripción
Hace coincidir las URL que contienen contains como una subcadena y les anexa parámetros de consulta. En caso de que la URL no coincida, los parámetros no se anexan a ella.

🚧

Llamar a este método antes de llamar a start

Argumentos de entrada

TipoNombreDescripción
NSStringcontainsLa secuencia para verificar la URL.
NSDictionaryparametersParámetros para agregar a la URL del enlace profundo después de que pasó la validación.

Devoluciones
void.

continue

Firma de método

- (id)continueUserActivity:(id)userActivity
restorationHandler:
(void (^_Nullable)(int *_Nullable))restorationHandler;
AppsFlyerLib.shared().continue(userActivity: NSUserActivity?, restorationHandler: (([Any]?) -> Void)?)

Descripción
Permite que AppsFlyer maneje la restauración desde unNSUserActivity. Usa este método para manejar enlaces universales.

Argumentos de entrada

TipoNombreDescripción
NSUserActivityuserActivityThe NSUserActivity que se pasó a al delegado de tu aplicación
void (^_Nullable)(int *_Nullable)restorationHandlerpass nil

Devoluciones
void.

enableFacebookDeferderedApplinks

Firma de método

- (void)enableFacebookDeferredApplinksWithClass:(Class _Nullable)facebookAppLinkUtilityClass;
enableFacebookDeferredApplinks(with:AnyClass?)

Descripción
Habilita la colección de enlaces de aplicaciones diferidos de Facebook.

  • Requiere el SDK de Facebook y la aplicación de Facebook en el dispositivo del cliente/objetivo.
  • Esta API debe invocarse antes de inicializar el SDK de AppsFlyer para que funcione correctamente.

Argumentos de entrada

TipoNombreDescripción
FBSDKAppLinkUtilityfacebookAppLinkUtilityClass

Devoluciones
void.

getAppsFlyerUID

Firma de método

- (NSString *)getAppsFlyerUID;
getAppsFlyerUID()

Descripción
Obtén el ID de dispositivo único de AppsFlyer. El SDK genera un ID de dispositivo único de AppsFlyer tras la instalación de la aplicación. Cuando se inicia el SDK, este ID se registra como el ID de la primera instalación de la aplicación.

Argumentos de entrada
Este método no toma ningún argumento de entrada.

Devoluciones

TipoDescripción
NSStringID interno de AppsFlyer.

getSDKVersion

Firma de método

- (NSString *)getSDKVersion;
getSDKVersion()

Descripción
Obtiene la versión del SDK.

Argumentos de entrada
Este método no toma ningún argumento de entrada.

Devoluciones

TipoDescripción
NSStringLa versión del SDK de AppsFlyer.

handleOpen

Firma de método

- (void)handleOpenUrl:(id)url options:(id)options;
AppsFlyerLib.shared().handleOpen(url: URL?, options: [AnyHashable : Any]?)

Descripción
Llama a este método desde el interior de tu método AppDelegate openURL method.
This method handles URI-scheme for iOS 9 and above.

Argumentos de entrada

TipoNombreDescripción
NSURLurlLa URL que se pasó al delegado de tu aplicación.
AnyHashableoptionsEl diccionario de opciones que se pasó a AppDelegate.

Devoluciones
void.

handlePushNotification

Firma de método

- (void)handlePushNotification:(NSDictionary * _Nullable)pushPayload;
AppsFlyerLib.shared().handlePushNotification(pushPayload: [AnyHashable : Any]?)

Descripción
Habilita AppsFlyer para manejar una notificación push.

Argumentos de entrada

TipoNombreDescripción
AnyHashablepushPayloadThe userInfo de la notificación remota recibida. A menos que se utilice addPushNotificationDeepLinkPath , los datos deben estar bajo la clave @“af” .

Devoluciones
void.

logEvent

Firma de método

- (void)logEvent:(NSString *)eventName withValues:(NSDictionary * _Nullable)values;
logEvent(eventName: String, withValues: [AnyHashable : Any]?)

Descripción
Usa este método para registrar un evento con parámetros de evento.

Argumentos de entrada

TipoNombreDescripción
NSStringeventNameContiene el nombre del evento que se podría proporcionar desde constantes predefinidas
AnyHashablewithValuesDiccionario de valores para el manejo por backend

Devoluciones
void.

logEvent

Firma de método

- (void)logEventWithEventName:(NSString *)eventName
  eventValues:(NSDictionary<NSString * , id> * _Nullable)eventValues
  completionHandler:(void (^ _Nullable)(NSDictionary<NSString *, id> * _Nullable dictionary, NSError * _Nullable error))completionHandler;
logEvent(eventName: String, withValues: [AnyHashable : Any]?, completionHandler:(([String : Any]?, Error?) -> Void)?)

Descripción
Usa este método para registrar un evento con parámetros de evento y pasar un controlador de finalización para manejar el éxito y el fracaso de los envíos de eventos.

Argumentos de entrada

TipoNombreDescripción
NSStringeventNameContiene el nombre del evento que se podría proporcionar desde constantes predefinidas
AnyHashablewithValuesDiccionario de valores para el manejo por backend
(^ _Nullable)(NSDictionary<NSString _, id> _ _Nullable dictionary, NSError * _Nullable error))completionHandler

Devoluciones
void.

logLocation

Firma de método

- (void)logLocation:(double)longitude latitude:(double)latitude;
logLocation(longitude: Double, latitude: Double)

Descripción
Para registrar la ubicación de la geolocalización. Hace lo mismo que el código siguiente.

Argumentos de entrada

TipoNombreDescripción
DoublelongitudeLa longitud de la ubicación
DoublelatitudeLa latitud de la ubicación

Devoluciones
void.

performOnAppAttribution

Firma de método

- (void)performOnAppAttributionWithURL:(NSURL * _Nullable)URL;
performOnAppAttribution(with:URL?)

Descripción
Se utiliza para activar manualmente el delegado onAppOpenAttribution delegate.

Argumentos de entrada

TipoNombreDescripción
NSURLURLEl parámetro para resolver en -[AppsFlyerLibDelegate onAppOpenAttribution:]

Devoluciones
void.

registerUninstall

Firma de método

- (void)registerUninstall:(NSData * _Nullable)deviceToken;
registerUninstall(deviceToken: Data?)

Descripción
Registra para desinstalación: debes registrar para la notificación remota y proporcionar a AppsFlyer el token push del dispositivo.

Argumentos de entrada

TipoNombreDescripción
NSDatadeviceTokenThe deviceToken es de didRegisterForRemoteNotificationsWithDeviceToken.

Devoluciones
void.

setConsentData

Firma de método

.setConsentData(afConsent: AppsFlyerConsent)
- (void)setConsentData:(AppsFlyerConsent) afConsent

Descripción

Transfers consent data to the SDK.

Argumentos de entrada

TipoNombreDescripción
AppsFlyerConsentafConsentAn object containing user consent data

setCurrentDeviceLanguage

Firma de método

- (void)setCurrentDeviceLanguage:(NSString *)currentDeviceLanguage

Descripción
Usa este método para configurar el idioma del dispositivo en el SDK y pasarlo a AppsFlyer.

Argumentos de entrada

TipoNombreDescripción
NSStringcurrentDeviceLanguageIdioma actual del dispositivo.

Ejemplo de uso

NSString *language = [[NSLocale preferredLanguages] objectAtIndex:0]
    [[AppsFlyerLib shared] setCurrentDeviceLanguage: @language];
let language = NSLocale.current.languageCode
AppsFlyerLib.shared().currentDeviceLanguage = language

setHost

Firma de método

(void)setHost:(NSString *)host withHostPrefix:(NSString *)hostPrefix;
setHost(host: String, withHostPrefix: String)

Descripción
Esta función configura el nombre de host y el prefijo del nombre de host para todos los puntos de conexión.

Nota: A partir del SDK V6.11, si el valor del host está vacío o nulo, se ignorará la llamada a la API.

Argumentos de entrada

TipoNombreDescripción
NSStringhostNombre de host.
NSStringwithHostPrefixObligatorio. Prefijo de host.

Devoluciones
void.

Ejemplo de uso

[[AppsFlyerLib shared] setHost:@"example.com" withHostPrefix:@"my_host_prefix"];
AppsFlyerLib.shared().setHost("example.com", withHostPrefix: "my_host_prefix")

setPartnerData

Firma de método

- (void)setPartnerDataWithPartnerId:(NSString * _Nullable)partnerId partnerInfo:(NSDictionary<NSString *, id> * _Nullable)partnerInfo;
setPartnerData(partnerId: String?, partnerInfo: [String : Any]?)

Descripción
Permite enviar datos personalizados para fines de integración de partners.

Argumentos de entrada

TipoNombreDescripción
NSStringpartnerIdID del partner (generalmente tiene el sufijo _int )
NSDictionary<NSString _, id> _ _NullablepartnerInfoDatos del cliente, depende de la naturaleza de integración con un partner específico

Devoluciones
void.

Ejemplo de uso

NSDictionary *partnerInfo = @{
 @"puid": @"123456789",
};

[[AppsFlyerLib shared] setPartnerDataWithPartnerId: @"test_int" partnerInfo:partnerInfo];
let partnerInfo = [
  "puid":"123456789",
]

AppsFlyerLib.shared().setPartnerData(partnerId:"test_int", partnerInfo:partnerInfo)

setSharingFilterForPartners

Agregado en V6.4
Firma de método

- (void)setSharingFilterForPartners:(NSArray<NSString *> * _Nullable)sharingFilter;

This function replaces the deprecated setSharingFilterForAllPartners

Descripción
Te permite configurar qué partners debe excluir el SDK del uso compartido de datos.

Argumentos de entrada

TipoNombreDescripción
NSArray<NSString _> _ _NullablesharingFilterUno o más identificadores de partners que deseas excluir. Debe incluir solo letras/dígitos y guiones bajos.

Longitud máxima del ID de partner: 45

Nota:
Para conocer los ID de partners requeridos:

  1. Ejecuta la API para Obtener las integraciones activas para obtener una lista de todas las integraciones activas.
  2. Utiliza el método media_source_name de la respuesta API como valores de entrada a la matriz partners del método.

Excepciones:

  • Para Apple Search Ads, usa Apple Search Ads (y no iossearchads_int).
  • For Twitter, use twitter (y no twitter_int)

Ejemplo de uso

[[AppsFlyerLib shared] setSharingFilterForPartners:@[@"examplePartner1_int"]]; // 1 partner
[[AppsFlyerLib shared] setSharingFilterForPartners:@[@"examplePartner1_int", @"examplePartner2_int"]]; // multiple partners
[[AppsFlyerLib shared] setSharingFilterForPartners:@[@"all"]]; // All partners
[[AppsFlyerLib shared] setSharingFilterForPartners:nil]; // Reset list (default)
AppsFlyerLib.shared().setSharingFilterForPartners(["examplePartner1_int"]) // 1 partner
AppsFlyerLib.shared().setSharingFilterForPartners(["examplePartner2_int", "examplePartner1_int"]) // multiple partners
AppsFlyerLib.shared().setSharingFilterForPartners(["all"]) // All partners
AppsFlyerLib.shared().setSharingFilterForPartners(nil) // Reset list (default)

setSharingFilterForAllPartners

Obsoleto en V6.4
Firma de método

- (void)setSharingFilterForAllPartners;
setSharingFilterForAllPartners()

This function is deprecated and has been replaced by setSharingFilterForPartners

Descripción
Block an event from being shared with integrated partners.

Argumentos de entrada
Este método no toma ningún argumento de entrada.

Devoluciones
void

setUserEmails

Firma de método

- (void)setUserEmails:(NSArray<NSString *> * _Nullable)userEmails withCryptType:(EmailCryptType)type;
setUserEmails(userEmails: [String]?, with: EmailCryptType)

Descripción
Use this to set the user email(s).
Note: MD-5 and SHA-1 encryption types are deprecated starting with SDK V6.9.0. Currently, only SHA-256 and NONE are supported.

Argumentos de entrada

TipoNombreDescripción
NSArray<NSString *>userEmailsMatriz de correo electrónico.
EmailCryptTypetypeTipo de cifrado.

Devoluciones
void.

shared

Firma de método

(AppsFlyerLib *)shared;

Descripción
Obtiene la instancia singleton de la clase AppsFlyerLib , creándola si es necesario.

Ejemplo de uso

AppsFlyerLib.shared()

start

Firma de método

- (void)start;
(void) start()

Descripción
Iniciar el SDK.

Argumentos de entrada
Este método no toma ningún argumento de entrada.

Devoluciones
void.

start

Firma de método

- (void)startWithCompletionHandler:(void (^ _Nullable)(NSDictionary<NSString *, id> * _Nullable dictionary, NSError * _Nullable error))completionHandler;
start(completionHandler: (([String : Any]?, Error?) -> Void)?)

Descripción
Inicia el SDK con un controlador de finalización.

Argumentos de entrada

TipoNombreDescripción
void (^ _Nullable)(NSDictionary<NSString _, id> _ _Nullable dictionary, NSError * _Nullable error)completionHandler

Devoluciones
void.

validateAndLogLogInAppPurchase

Firma de método

- (void)validateAndLogInAppPurchase:(id)productIdentifier
price:(id)price
 currency:(id)currency
transactionId:(id)transactionId
additionalParameters:(id)params
success:(void (^_Nullable)(int *))successBlock
failure:
(void (^_Nullable)(int *_Nullable,
 id _Nullable))failedBlock;
validateAndLog(inAppPurchase: String?, price: String?, currency: String?, transactionId: String?, additionalParameters: [AnyHashable : Any]?, success: ([AnyHashable : Any]) -> Void)?, failure: ((Error?, Any?) -> Void)?)

Descripción
Para registrar y validar las compras in-app puedes llamar a este método desde el método [completeTransaction] en tu SKPaymentTransactionObserver.

Argumentos de entrada

TipoNombreDescripción
NSStringproductIdentifierinAppPurchase en Swift.
NSStringprice
NSStringcurrency
NSStringtransactionId
NSDictionaryadditionalParameters
void (^_Nullable)(int *))successBlocksuccessBlockControlador de finalización para el registro y validación exitosos.
void (^_Nullable)(int *_Nullable, id _Nullable))failedBlockControlador de finalización para el registro y la validación fallidos.

Devoluciones
void.

waitForATTUserAuthorization

Firma de método

- (void)waitForATTUserAuthorizationWithTimeoutInterval:(id)timeoutInterval;
waitForATTUserAuthorization(timeoutInterval:)

Descripción
Espera la solicitud de autorización del usuario para acceder a los datos relacionados con la aplicación.

Argumentos de entrada

TipoNombreDescripción
NSIntegertimeoutInterval

Ejemplo de uso

if (@available(iOS 14, *)) {
        [[AppsFlyerLib shared] waitForATTUserAuthorizationWithTimeoutInterval:60];
        [ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status){
        }];
    }
if #available(iOS 14, *) {
            AppsFlyerLib.shared().waitForATTUserAuthorization(withTimeoutInterval: 60)
            ATTrackingManager.requestTrackingAuthorization { (status) in
            }
        }

Devoluciones
void.