MTPush-API

MTCorePrivatesApi

  • Se utiliza principalmente para la configuración de información.
  • Todos los métodos deben llamarse en el proceso principal. No se debe evaluar si el proceso los ubicará en el proceso secundario antes de llamar al método; de lo contrario, se producirá un error en la llamada.

configAppKey

  • Se debe llamar en el método Application.onCreate().
  • Se debe llamar antes de init
/** *Configure the application key without using the configuration in AndroidManifest.xml * *You need to call in the Application.onCreate() method *Please call before [init](#init) * *@ param context is not empty *@ param appKey is not empty */ Public static void configAppKey (Context context, String appKey)
              
              /**
*Configure the application key without using the configuration in AndroidManifest.xml
*
*You need to call in the Application.onCreate() method
*Please call before [init](#init)
*
*@ param context is not empty
*@ param appKey is not empty
*/
Public static void configAppKey (Context context, String appKey)

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

El ejemplo de código es el siguiente

MTCorePrivatesApi.configAppKey(this, "your appkey");
              
              MTCorePrivatesApi.configAppKey(this, "your appkey");

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

configAppChannel

  • Se debe llamar en el método Application.onCreate().
  • Se debe llamar antes de init
/** * Configure the application channel, not using the configuration in AndroidManifest.xml * Needs to be called in the Application.onCreate() method * Needs to be used before init, and must be used within Application.onCreate * * @param context Not empty * @param appChannel Not empty */ public static void configAppChannel(Context context, String appChannel)
              
                   /**
         * Configure the application channel, not using the configuration in AndroidManifest.xml
         * Needs to be called in the Application.onCreate() method
         * Needs to be used before init, and must be used within Application.onCreate
         *
         * @param context    Not empty
         * @param appChannel Not empty
         */
    public static void configAppChannel(Context context, String appChannel)

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

Ejemplo de código:

MTCorePrivatesApi.configAppChannel(this,"your_appChannel");
              
              MTCorePrivatesApi.configAppChannel(this,"your_appChannel");

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

configAppSiteName

  • Se debe llamar en el método Application.onCreate().
  • Se debe llamar antes de init
/** *Configure the data center site name without using the configuration in AndroidManifest.xml *The currently available nodes are Singapore, USA_Virginia, DEU_Frankfurt, and HongKong. *You need to call in the Application.onCreate() method *Please call before [init](#init) * *@ param context is not empty *@ param appSiteName is not empty */ Public static void configAppSiteName (Context context, String appSiteName)
              
              /**
*Configure the data center site name without using the configuration in AndroidManifest.xml
*The currently available nodes are Singapore, USA_Virginia, DEU_Frankfurt, and HongKong.
*You need to call in the Application.onCreate() method
*Please call before [init](#init)
*
*@ param context is not empty
*@ param appSiteName is not empty
*/
Public static void configAppSiteName (Context context, String appSiteName)

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

El ejemplo de código es el siguiente

MTCorePrivatesApi.configAppSiteName(this, "Your Platform Data Center Site Name");
              
              MTCorePrivatesApi.configAppSiteName(this, "Your Platform Data Center Site Name");

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

configHeartbeatInterval">configHeartbeatInterval

  • Se debe llamar en el método Application.onCreate().
  • Se debe llamar antes de init
/** * Set the heartbeat interval * * Need to be called in the Application.onCreate() method * * @param context is not empty * @param heartbeatInterval The unit of time is milliseconds, must be greater than 0, the default value is 4 minutes and 50 seconds\ */ public static void configHeartbeatInterval(Context context, long heartbeatInterval)
              
                   /**
      * Set the heartbeat interval
      *
      * Need to be called in the Application.onCreate() method
      *
      * @param context is not empty
      * @param heartbeatInterval The unit of time is milliseconds, must be greater than 0, the default value is 4 minutes and 50 seconds\
      */
     public static void configHeartbeatInterval(Context context, long heartbeatInterval)

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

El ejemplo de código es el siguiente

  • La demo establece el intervalo de heartbeat en 3 minutos
MTCorePrivatesApi.configHeartbeatInterval(this,3*60*1000);
              
              MTCorePrivatesApi.configHeartbeatInterval(this,3*60*1000);

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

configConnectRetryCount">configConnectRetryCount

  • Se debe llamar en el método Application.onCreate().
  • Se debe llamar antes de init
/** * Set the number of long connection retries * * Need to be called in the Application.onCreate() method * * @param context is not empty * @param connectRetryCount The number of retries, the default value is 3, at least 3 times */ public static void configConnectRetryCount(Context context, int connectRetryCount)
              
                   /**
      * Set the number of long connection retries
      *
      * Need to be called in the Application.onCreate() method
      *
      * @param context is not empty
      * @param connectRetryCount The number of retries, the default value is 3, at least 3 times
      */
     public static void configConnectRetryCount(Context context, int connectRetryCount)

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

El ejemplo de código es el siguiente

  • La demo establece el número de reconexiones en 10
MTCorePrivatesApi.configConnectRetryCount(this,10);
              
              MTCorePrivatesApi.configConnectRetryCount(this,10);

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

setTcpSSl">setTcpSSl

  • Se debe llamar en el método Application.onCreate().
  • Se debe llamar antes de init
/** * Set whether the long connection is encrypted, the default is not encrypted * * Need to be called in the Application.onCreate() method * * @param isSSL true encryption, false no encryption */ public static void setTcpSSl(boolean isSSL)
              
                   /**
      * Set whether the long connection is encrypted, the default is not encrypted
      *
      * Need to be called in the Application.onCreate() method
      *
      * @param isSSL true encryption, false no encryption
      */
     public static void setTcpSSl(boolean isSSL)

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

El ejemplo de código es el siguiente

  • La demo configura el cifrado
MTCorePrivatesApi.setTcpSSl(true);
              
              MTCorePrivatesApi.setTcpSSl(true);

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

configDebugMode

  • Se debe llamar en el método Application.onCreate().
  • Se debe llamar antes de init
  • Formato de registro de EngageLab; buscar "ENGAGELAB-PRIVATES"
  • EngageLab imprimirá registros en el proceso principal y en el proceso secundario, respectivamente
/** * Set whether to debug mode, debug mode will print more detailed logs * * Need to be called in the Application.onCreate() method * * @param context is not empty * @param enable Whether to debug mode, true is debug mode, false is not */ public static void configDebugMode(Context context, boolean enable)
              
                   /**
      * Set whether to debug mode, debug mode will print more detailed logs
      *
      * Need to be called in the Application.onCreate() method
      *
      * @param context is not empty
      * @param enable Whether to debug mode, true is debug mode, false is not
      */
     public static void configDebugMode(Context context, boolean enable)

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

El ejemplo de código es el siguiente

  • El SDK funciona en dos procesos: el proceso principal y el proceso secundario. El nombre del proceso secundario es el nombre del atributo process del servicio de la subclase de MTCommonService.
  • La etiqueta (tag) de registro del SDK es "ENGAGELAB-PRIVATES".
  • Los registros de las operaciones relacionadas con udp/tcp/http se encuentran todos en el proceso secundario.
  • Por lo tanto, si no se puede recibir el push, se recomienda habilitar primero el modo de depuración y, a continuación, obtener en el proceso secundario el registro con la etiqueta "ENGAGELAB-PRIVATES" y proporcionarlo al soporte técnico para su análisis.
// It is recommended to set it to true when the application is not online, which is convenient for integration MTCorePrivatesApi.configDebugMode(context.getApplicationContext(), true); // It is recommended to set it to false after the application is launched MTCorePrivatesApi.configDebugMode(context.getApplicationContext(), false);
              
              // It is recommended to set it to true when the application is not online, which is convenient for integration
MTCorePrivatesApi.configDebugMode(context.getApplicationContext(), true);

// It is recommended to set it to false after the application is launched
MTCorePrivatesApi.configDebugMode(context.getApplicationContext(), false);

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

getUserId">getUserId

Cuando el valor devuelto está vacío, se debe comprobar si el entorno está configurado y si se ha llamado a la inicialización.

Si se confirma que la configuración es correcta, puede que todavía se esté en el proceso de conexión; se podrá obtener cuando onConnectStatus devuelva true.

/** * Get the userId of the current device, which is the unique identifier of EngageLab, which can be used to push * * @param context is not empty * @return userId */ public static String getUserId(Context context)
              
                   /**
      * Get the userId of the current device, which is the unique identifier of EngageLab, which can be used to push
      *
      * @param context is not empty
      * @return userId
      */
     public static String getUserId(Context context)

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

getRegistrationId">getRegistrationId

/** * Get the registrationId of the current device, the unique identifier of EngageLab, which can be used to push * * @param context is not empty * @return registrationId */ public static String getRegistrationId(Context context)
              
                   /**
      * Get the registrationId of the current device, the unique identifier of EngageLab, which can be used to push
      *
      * @param context is not empty
      * @return registrationId
      */
     public static String getRegistrationId(Context context)

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

MTPushPrivatesApi

  • Se utiliza principalmente para la funcionalidad de push.
  • Todos los métodos deben llamarse en el proceso principal; no se debe intentar determinar si el proceso lo ubicará en el proceso secundario antes de llamar al método; de lo contrario, se producirá un error en la llamada.

reportNotificationOpened

  • Se debe llamar primero a init; de lo contrario, la llamada no será válida
  • Si no se integra el paquete de fabricante de EngageLab, pero se necesita que EngageLab contabilice la tasa de apertura de notificaciones, se debe llamar a esta interfaz
  • Algunos fabricantes (por ejemplo: huawei/oppo/vivo) no disponen de callbacks de llegada y clic de notificación. Tras configurar la Activity a la que salta la notificación al hacer clic, se puede obtener el parámetro para el informe en la Activity de destino. Se recomienda configurar para todos los fabricantes la Activity de salto al hacer clic en la notificación.
  • No es necesario para las versiones MTPush 4.0.0 y posteriores

onFragmentResume

Instrucciones de uso: Dado que existen cuatro formas de añadir un Fragment en Android, cada método requiere un tratamiento distinto del Fragment. A continuación se explican los controles para la visualización en la aplicación del Fragment especificado en función de estos cuatro métodos.

Método de uso de Fragment ¿Puede escuchar el ciclo de vida del Fragment? Método de llamada de la interfaz de página de visualización dinámica de JPush
Método 1: add/show/hide No se puede escuchar el ciclo de vida Llamar a onFragmentResume y onHiddenChanged en el Fragment
Método 2: ViewPager No se puede escuchar el ciclo de vida Llamar a setUserVisibleHint en el Fragment
Método 3: replace Se puede escuchar el ciclo de vida Llamar a onResume y onPause en el Fragment
Método 4: attach/detach Se puede escuchar el ciclo de vida Llamar a onResume y onPause en el Fragment
  • Método 1: add/show/hide

  • Método ViewPager

  • Métodos replace o attach/detach

(El resto del contenido se mantiene sin cambios estructurales, aplicando de forma global la capitalización correcta EngageLab en todas las apariciones del nombre de la marca y conservando el formato original del documento).

Icon Solid Transparent White Qiyu
Contacto