Guía de API de iOS

Versión aplicable

La versión del SDK de iOS de MTPush a la que corresponde este documento es v3.0.0 o posterior.

Configurar centro de datos

Descripción de la función

Esta función se utiliza para hacer coincidir el centro de datos que se ha seleccionado en el portal de EngageLab. Asegúrese de que el centro de datos configurado sea coherente con el seleccionado en el portal.
Si no se configura, el SDK utilizará el nodo predeterminado del centro de datos de Singapur.

En v4.3.5 y versiones posteriores, esta interfaz no es válida. Los desarrolladores no necesitan llamar manualmente a esta interfaz para configurar el centro de datos. El SDK hará coincidir automáticamente el centro de datos correspondiente en función del appkey.

Versiones compatibles

Versión inicial compatible: v4.3.0

Versión no válida

Versión a partir de la cual expira: v4.3.5

Definición de la interfaz

+ (void)setSiteName:(NSString *)siteName;
              
              + (void)setSiteName:(NSString *)siteName;

            
Este bloque de código se muestra en una ventana flotante

Descripción de parámetros

  • siteName
    • Nombre del centro de datos

Instrucciones de llamada

Llamar a esta interfaz antes de llamar a la interfaz de inicialización (setupWithOption:channel:apsForProduction:advertisingIdentifier).


API de etiquetas y alias (iOS)

Descripción de la función

<div style="font-size:13px;background: #E0EFFE;border: 1px solid #ACBFD7;border-radius: 3px;padding: 8px 16px;padding-bottom: 0;margin-bottom: 0;"> <p>Recordatorio: <strong>prestar</strong> atención a la gestión del resultado de devolución de llamada al configurar el alias de etiqueta.</p> <p>Solo cuando el valor devuelto en la devolución de llamada sea 0, la configuración se habrá realizado correctamente y se podrá enviar el push al objetivo. De lo contrario, la API del servidor devuelve un error 1011. Todas las funciones de devolución de llamada se ejecutan en el hilo principal.</p> </div>
              
              <div style="font-size:13px;background: #E0EFFE;border: 1px solid #ACBFD7;border-radius: 3px;padding: 8px 16px;padding-bottom: 0;margin-bottom: 0;">
<p>Recordatorio: <strong>prestar</strong> atención a la gestión del resultado de devolución de llamada al configurar el alias de etiqueta.</p>
<p>Solo cuando el valor devuelto en la devolución de llamada sea 0, la configuración se habrá realizado correctamente y se podrá enviar el push al objetivo. De lo contrario, la API del servidor devuelve un error 1011. Todas las funciones de devolución de llamada se ejecutan en el hilo principal.</p>
</div>

            
Este bloque de código se muestra en una ventana flotante

Se proporcionan varias API relacionadas para manipular alias y etiquetas.
Estas API se pueden llamar en cualquier parte de la aplicación.

Añadir etiquetas

Llamar a esta API para añadir etiquetas y devolver el resultado en un bloque.

Nota: esta interfaz aplica lógica de adición, no de sobrescritura.

(Las secciones Sobrescribir etiquetas, Eliminar etiquetas, Vaciar etiquetas, Consultar etiquetas, Validar etiquetas, Configurar alias, Eliminar alias y Consultar alias aplican el mismo ajuste: “Llamar a esta API…”)


Mensajería in-app

Ejemplo de uso

Instrucciones de uso

Utilizar las interfaces pageEnterTo: y pageLeave: conjuntamente. Llamar a pageEnterTo: al entrar en una página y a pageLeave: al salir de la página.


Obtener RegistrationID

Obtener registrationID

Llamar a esta API para obtener el RegistrationID de la aplicación. El valor correspondiente solo se devuelve si la aplicación se registra correctamente en el servidor de MTPush; de lo contrario, se devuelve una cadena vacía.

Consejos útiles:
En iOS 9, al desinstalar y reinstalar aplicaciones, el devicetoken devuelto por APNs cambiará. El desarrollador debe obtener el RegistrationID más reciente del dispositivo. Para ello, llamar a esta interfaz registrationID en el método de implementación de kMTCNetworkDidLoginNotification para obtener el RegistrationID.


Configurar el badge

Descripción de la función

Para enviar mensajes push, basta con configurar el badge +1; EngageLab incrementará automáticamente en +1 el valor de badge almacenado en el servidor para cada usuario y luego lo enviará al usuario.


Registrar/actualizar notificaciones locales

Descripción de obtención

Asignar request.requestIdentifier en request como parámetro para actualizar el push existente; de lo contrario, se registra un nuevo push.


Configuración del nivel de registro

Habilitar el modo de depuración

Descripción de obtención

Cuando se necesite más información de depuración, Llamar a esta API para habilitar el modo Debug.

Deshabilitar la información de registro

Descripción de obtención

Llamar a esta API cuando no se necesite información de depuración (se recomienda llamar a esta API al publicar para ocultar la información de registro y ahorrar rendimiento).


Configurar el modo de cifrado TCP

Instrucciones de llamada

Llamar a este método antes de inicializar la interfaz.


Desactivar el servicio push (turnOffPush)

Versión compatible

Disponible desde MTPush iOS SDK v5.4.3.

Descripción

Esta API impide la reconexión automática, cierra la conexión persistente, detiene la recopilación y el envío de información del cliente, detiene los mensajes dentro de la aplicación y anula el registro del token APNs actual. Mientras el push está desactivado, no están disponibles las API que dependen de la red push o de la identidad de registro. Las API locales de notificaciones, permisos, callbacks y registro siguen disponibles.

Definición de la API

+ (void)turnOffPush:(nullable MTPushRegistrationCompletion)completion;
              
              + (void)turnOffPush:(nullable MTPushRegistrationCompletion)completion;

            
Este bloque de código se muestra en una ventana flotante

Ejemplo de código

[MTPushService turnOffPush:^(NSInteger code, NSString *message) { NSLog(@"turnOffPush code: %ld, message: %@", (long)code, message); }];
              
              [MTPushService turnOffPush:^(NSInteger code, NSString *message) {
    NSLog(@"turnOffPush code: %ld, message: %@", (long)code, message);
}];

            
Este bloque de código se muestra en una ventana flotante

Parámetros

  • completion: Optional result callback; it runs on the main thread.

Callback

El callback se ejecuta en el hilo principal:

code Descripción
0 Servicio desactivado correctamente
6050 El SDK no está inicializado
6051 Hay una operación de registro o anulación en curso

Notas de uso

turnOffPush no devuelve 6052. Después de desactivar push, las API que requieren red o identidad de registro utilizan 6052 para indicar que la operación no está disponible. El simulador de iOS no admite la anulación de APNs y solo escribe un aviso en el registro.

Reactivar el servicio push (turnOnPush)

Versión compatible

Disponible desde MTPush iOS SDK v5.4.3.

Descripción

Reactiva el servicio con nuevos parámetros de inicialización, restaura la recopilación y el envío de información, los mensajes dentro de la aplicación y la conexión persistente, y registra de nuevo el token APNs. Pase el nuevo deviceToken del callback de AppDelegate a registerDeviceToken:. La API retorna inmediatamente y no proporciona callback de resultado.

Definición de la API

+ (void)turnOnPush:(NSString *)appKey channel:(nullable NSString *)channel apsForProduction:(BOOL)isProduction advertisingIdentifier:(nullable NSString *)advertisingId;
              
              + (void)turnOnPush:(NSString *)appKey
           channel:(nullable NSString *)channel
  apsForProduction:(BOOL)isProduction
advertisingIdentifier:(nullable NSString *)advertisingId;

            
Este bloque de código se muestra en una ventana flotante

Ejemplo de código

[MTPushService turnOnPush:@"your_app_key" channel:@"App Store" apsForProduction:YES advertisingIdentifier:nil];
              
              [MTPushService turnOnPush:@"your_app_key"
                  channel:@"App Store"
         apsForProduction:YES
  advertisingIdentifier:nil];

            
Este bloque de código se muestra en una ventana flotante

Parámetros

  • appKey: Nuevo EngageLab AppKey; no puede estar vacío.
  • channel: Canal de distribución; puede estar vacío.
  • isProduction: Entorno APNs; YES para producción y NO para desarrollo.
  • advertisingId: Identificador publicitario; puede estar vacío.

Función de difusión por voz

Configurar appGroupId

Instrucciones de llamada

Llamar a esta interfaz antes de la interfaz de inicialización.

Configurar si se habilita la difusión por voz

Instrucciones de llamada

Llamar a esta interfaz antes de la interfaz de inicialización. Está deshabilitada de forma predeterminada.


Configurar si se debe restablecer RegistrationID al sustituir el dispositivo

Instrucciones de uso

Llamar a este método antes de la interfaz de inicialización. Está deshabilitado de forma predeterminada.


LiveActivity

Informar de liveActivity PushToStartToken

Llamar a esta API para informar del pushToStartToken de una liveActivity y devolver el resultado en el bloque.

Informar de liveActivity PushToken (actualizar token)

Llamar a esta API para informar del PushToken de una liveActivity concreta y devolver el resultado en el bloque.

Informar visualización y clic de mensaje personalizado

Descripción de la función

  • Llamar a reportCustomDisplay: tras mostrar visualmente el mensaje personalizado al usuario; solo los mensajes reportados explícitamente cuentan para las estadísticas de visualización.
  • Llamar a reportCustomClick: después de que el usuario interactúe con (haga clic en) el mensaje personalizado.
  • messageId se obtiene del callback del mensaje personalizado mediante userInfo[@"_j_msgid"].

Definición de interfaz

Objective-C

/*! * @abstract Informar visualización de mensaje personalizado * * @param messageId ID del mensaje obtenido del callback del mensaje personalizado userInfo[@"_j_msgid"], no debe ser nil (tipo NSNumber; usar stringValue para convertir a NSString) * * @discussion Llamar tras completar la visualización del mensaje personalizado. La llegada del mensaje ≠ visualización; solo se contabiliza cuando se reporta explícitamente. */ + (void)reportCustomDisplay:(NSString *)messageId; /*! * @abstract Informar clic en mensaje personalizado * * @param messageId ID del mensaje obtenido del callback del mensaje personalizado userInfo[@"_j_msgid"], no debe ser nil (tipo NSNumber; usar stringValue para convertir a NSString) * * @discussion Llamar tras el clic del usuario en el mensaje personalizado. Abrir la app ≠ clic; debe ser activado por la interacción del usuario con el mensaje. */ + (void)reportCustomClick:(NSString *)messageId;
              
              /*!
 * @abstract Informar visualización de mensaje personalizado
 *
 * @param messageId  ID del mensaje obtenido del callback del mensaje personalizado userInfo[@"_j_msgid"], no debe ser nil (tipo NSNumber; usar stringValue para convertir a NSString)
 *
 * @discussion Llamar tras completar la visualización del mensaje personalizado. La llegada del mensaje ≠ visualización; solo se contabiliza cuando se reporta explícitamente.
 */
+ (void)reportCustomDisplay:(NSString *)messageId;

/*!
 * @abstract Informar clic en mensaje personalizado
 *
 * @param messageId  ID del mensaje obtenido del callback del mensaje personalizado userInfo[@"_j_msgid"], no debe ser nil (tipo NSNumber; usar stringValue para convertir a NSString)
 *
 * @discussion Llamar tras el clic del usuario en el mensaje personalizado. Abrir la app ≠ clic; debe ser activado por la interacción del usuario con el mensaje.
 */
+ (void)reportCustomClick:(NSString *)messageId;

            
Este bloque de código se muestra en una ventana flotante

Ejemplo

Objective-C

// Tras mostrar el mensaje personalizado [MTPushService reportCustomDisplay:[userInfo[@"_j_msgid"] stringValue]]; // Tras el clic del usuario en el mensaje personalizado [MTPushService reportCustomClick:[userInfo[@"_j_msgid"] stringValue]];
              
              // Tras mostrar el mensaje personalizado
[MTPushService reportCustomDisplay:[userInfo[@"_j_msgid"] stringValue]];

// Tras el clic del usuario en el mensaje personalizado
[MTPushService reportCustomClick:[userInfo[@"_j_msgid"] stringValue]];

            
Este bloque de código se muestra en una ventana flotante

Swift

// Tras mostrar el mensaje personalizado MTPushService.reportCustomDisplay((userInfo["_j_msgid"] as? NSNumber)?.stringValue) // Tras el clic del usuario en el mensaje personalizado MTPushService.reportCustomClick((userInfo["_j_msgid"] as? NSNumber)?.stringValue)
              
              // Tras mostrar el mensaje personalizado
MTPushService.reportCustomDisplay((userInfo["_j_msgid"] as? NSNumber)?.stringValue)

// Tras el clic del usuario en el mensaje personalizado
MTPushService.reportCustomClick((userInfo["_j_msgid"] as? NSNumber)?.stringValue)

            
Este bloque de código se muestra en una ventana flotante
Icon Solid Transparent White Qiyu
Contacto