Guide d'intégration du SDK des canaux fabricants
Ce document vise à guider les clients dans l'intégration des SDK des différents canaux fabricants en utilisant une méthode d'intégration automatisée afin de permettre les notifications push hors ligne.
Pour télécharger le SDK, veuillez consulter Téléchargement des ressources. Pour le numéro de version le plus récent du SDK, veuillez consulter le Changelog.
Prérequis
- Le canal EngageLab a déjà été intégré.
- Avant d'intégrer le SDK du fabricant, vous devez demander les paramètres du canal fabricant concerné. Veuillez consulter le Guide de demande des paramètres du canal fabricant pour plus de détails.
Fichiers de ressources
- Placez l'icône de notification nommée
mtpush_notification_icon.pngdansres/drawable/. Si elle n'est pas configurée, le SDK utilisera l'icône de l'application, ce qui peut entraîner des problèmes d'affichage sur les versions Android récentes.
Guide d'intégration du canal Xiaomi
Configurer le support de mavenCentral
Configurez le support de mavenCentral dans le fichier gradle principal du répertoire racine du projet. (Les nouveaux projets sont généralement configurés par défaut.)
buildscript {
repositories {
mavenCentral()
}
}
allprojects {
repositories {
mavenCentral()
}
}
Configurer les dépendances
Dans la section dependencies du fichier gradle du module application, ajoutez le code suivant :
dependencies {
// La version du fabricant doit correspondre à la version du SDK EngageLab
implementation 'com.engagelab.plugin:mi:5.x.x'
}
Configurer les paramètres
Dans la section defaultConfig du fichier gradle du module application, ajoutez le code suivant :
manifestPlaceholders = [
// Définir les variables dans le fichier manifest.xml
XIAOMI_APPKEY : "MI-APPKEY de votre application Xiaomi", // appkey enregistré sur la plateforme Xiaomi
XIAOMI_APPID : "MI-APPID de votre application Xiaomi", // appid enregistré sur la plateforme Xiaomi
]
Configurer l'obfuscation du code
Si vous utilisez proguard, ajoutez le contenu suivant au fichier de configuration pour éviter que de fausses alertes n'empêchent la compilation :
-dontwarn com.xiaomi.push.**
-keep class com.xiaomi.push.** { *; }
Validation du succès de l'intégration
Si l'intégration est réussie, le journal affichera ce qui suit :
D [MTMiBusiness] support xiaomi push
D [MTMiBusiness] onTokenSuccess:get token is Tv3KBknVcnEaXnLe89MGEH3SWVgUYdLDYzJaST30IoIGATl2tv5eu6iuT/PTO0Mj
D [MTPlatformBusiness] onPlatformTokenSuccess, rid:5, platformToken:
{
platform=1,
token=Tv3KBknVcnEaXnLe89MGEH3SWVgUYdLDYzJaST30IoIGATl2tv5eu6iuT/PTO0Mj
region=NULL
isUserSettings=false
}
Méthode de test du canal Xiaomi
- Rendez-vous dans [Console EngageLab] -> [AppPush] -> [Paramètres de base] -> [Paramètres d'intégration], saisissez les paramètres : AppKey, AppID, AppSecret, puis cliquez sur "Enregistrer".

- Après avoir tué le processus de l'application, effectuez un push. Si la notification est reçue, l'intégration du canal fabricant est réussie.
Remarques spéciales pour Xiaomi Android 13 et supérieur
Selon la documentation officielle de Xiaomi, Android 13 et supérieur exigent que la méthode de lancement de l'application corresponde précisément au filtre Intent pour garantir le bon fonctionnement sur les appareils Xiaomi.
Veuillez consulter la documentation officielle de Google pour plus de détails sur les filtres Intent sous Android 13 et supérieur : Documentation officielle Google - Intent Filters
Recommandations pour les tests développeur :
Les développeurs peuvent vérifier les "Modifications de compatibilité des applications" dans les options développeur sur les appareils Xiaomi et activer l'option ENFORCE_INTENTS_TO_MATCH_INTENT_FILTERS lors des tests pour garantir le bon fonctionnement de l'application dans tous les cas.
Guide d'intégration du canal Huawei
Configurer le support de mavenCentral
Configurez le support de mavenCentral et la dépendance agconnect dans le fichier gradle principal du répertoire racine du projet.
buildscript {
repositories {
google()
mavenCentral()
maven {url 'https://developer.huawei.com/repo/'}
}
}
buildscript {
dependencies {
classpath 'com.huawei.agconnect:agcp:1.9.1.301'
}
}
allprojects {
repositories {
google()
mavenCentral()
maven {url 'https://developer.huawei.com/repo/'}
}
}
(Facultatif) Si vous utilisez gradle 8.0, ajoutez la commande suivante au fichier gradle.properties au niveau du projet :
Remarque : L'intégration de versions du plugin AGC inférieures à 1.9.1.300 ne prend pas en charge la compatibilité gradle 8.0. Vous devez exécuter cette étape.
apmsInstrumentationEnabled=false
Ajouter le plugin Huawei
Ajoutez la ligne suivante en bas du fichier build.gradle du module application pour activer le plugin gradle :
apply plugin: 'com.huawei.agconnect'
Configurer les dépendances
Dans la section dependencies du fichier gradle du module application, ajoutez le code suivant, en sélectionnant la dernière version selon la publication Huawei :
dependencies {
implementation 'com.huawei.hms:push:6.13.0.300'
// La version du fabricant doit correspondre à la version du SDK AppPush
implementation 'com.engagelab.plugin:huawei:5.x.x'
}
Configurer le fichier agconnect-services.json
Consultez le Guide de demande des paramètres du canal fabricant pour obtenir le fichier agconnect-services.json et le placer dans le répertoire app.

Configurer le certificat de signature
Dans le fichier build.gradle, configurez la signature correspondant au certificat d'empreinte ajouté dans le backend Huawei.
Le service HMS exige que l'application soit signée pour une inscription réussie. Vous pouvez obtenir le certificat d'empreinte correspondant avec la commande
keytool -list -v -keystore keystorefileName.
signingConfigs {
release {
storeFile file("release.keystore") // Chemin du fichier de signature
storePassword "123456"
keyAlias "android.keystore"
keyPassword "123456"
}
}
buildTypes {
release {
minifyEnabled true
proguardFiles 'proguard-rules.pro'
signingConfig signingConfigs.release
}
debug{
minifyEnabled false
signingConfig signingConfigs.release
}
}
Configurer l'obfuscation du code
Si vous utilisez proguard, ajoutez le contenu suivant au fichier de configuration pour éviter que de fausses alertes n'empêchent la compilation :
-ignorewarnings
-keepattributes *Annotation*
-keepattributes Exceptions
-keepattributes InnerClasses
-keepattributes Signature
-keepattributes SourceFile,LineNumberTable
-keep class com.hianalytics.android.**{*;}
-keep class com.huawei.updatesdk.**{*;}
-keep class com.huawei.hms.**{*;}
Si vous utilisez AndResGuard, ajoutez la liste blanche AndResGuard au fichier de configuration d'obfuscation.
"R.string.hms*",
"R.string.connect_server_fail_prompt_toast",
"R.string.getting_message_fail_prompt_toast",
"R.string.no_available_network_prompt_toast",
"R.string.third_app_*",
"R.string.upsdk_*",
"R.layout.hms*",
"R.layout.upsdk_*",
"R.drawable.upsdk*",
"R.color.upsdk*",
"R.dimen.upsdk*",
"R.style.upsdk*",
"R.string.agc*"
Validation du succès de l'intégration
Si l'intégration est réussie, le journal affichera ce qui suit :
D [MTHuaweiBusiness] support huawei push
D [MTHuaweiBusiness] onTokenSuccess:get token is IQAAAACy0aL1AABEZ3l2C7jluCGX5XriooCvoOwK9TrjG1MTpH0CD47WPXFcAbtt3DdOeOPvX6d7xfAVctoyaOCGKRllRa-0RBP7WQrYI6SxnOp1GA
D [MTPlatformBusiness] onPlatformTokenSuccess, rid:5, platformToken:
{
platform=2,
token=IQAAAACy0aL1AABEZ3l2C7jluCGX5XriooCvoOwK9TrjG1MTpH0CD47WPXFcAbtt3DdOeOPvX6d7xfAVctoyaOCGKRllRa-0RBP7WQrYI6SxnOp1GA
region=NULL
isUserSettings=false
}
Méthode de test du canal Huawei
- Rendez-vous dans [Console EngageLab] -> [AppPush] -> [Paramètres de base] -> [Paramètres d'intégration], saisissez les paramètres : AppID, AppSecret, puis cliquez sur "Enregistrer".
2. Après avoir tué le processus de l'application, effectuez un push. Si la notification est reçue, l'intégration du canal fabricant est réussie.
Guide d'intégration du canal Meizu
Configurer le support de mavenCentral
Dans le fichier gradle principal du répertoire racine du projet, configurez le support de mavenCentral. (Les nouveaux projets sont généralement configurés par défaut.)
buildscript {
repositories {
mavenCentral()
}
}
allprojects {
repositories {
mavenCentral()
}
}
Configurer les dépendances
Dans la section dependencies du fichier gradle du module application, ajoutez le code suivant :
dependencies {
// La version du fabricant doit correspondre à la version du SDK AppPush
implementation 'com.engagelab.plugin:meizu:5.x.x'
// Pour Meizu, à partir de la version 5.2.0 du SDK, il faut intégrer "com.engagelab.plugin:meizu_th_push". Avant la version 5.2.0, cette ligne n'est pas nécessaire.
// La version du fabricant doit correspondre à la version du SDK AppPush
implementation 'com.engagelab.plugin:meizu_th_push:5.2.0'
}
Configurer les paramètres
Dans la section defaultConfig du fichier gradle du module application, ajoutez le code suivant :
Les paramètres Meizu doivent être préfixés par "MZ-".
manifestPlaceholders = [
// Définir les variables dans le fichier manifest.xml
MEIZU_APPKEY : "MZ-APPKEY de votre application Meizu", // appkey enregistré sur la plateforme Meizu
MEIZU_APPID : "MZ-APPID de votre application Meizu", // appid enregistré sur la plateforme Meizu
]
Configurer l'obfuscation du code
Si vous utilisez proguard, ajoutez le contenu suivant au fichier de configuration pour éviter que de fausses alertes n'empêchent la compilation :
-dontwarn com.meizu.cloud.**
-keep class com.meizu.cloud.** { *; }
Validation du succès de l'intégration
Si l'intégration est réussie, le journal affichera ce qui suit :
D [MTMeizuBusiness] support meizu push
D [MTPlatformBusiness] onPlatformTokenSuccess, rid:5, platformToken:
{
platform=3,
token=DDI5c060475064d447b40670206756d73605705037205
region=NULL
isUserSettings=false
}
Si le canal Meizu ne parvient pas à obtenir le token, essayez d'ajouter android.enableR8 = false dans le fichier gradle.properties pour désactiver R8.
Méthode de test du fabricant Meizu
Rendez-vous dans [Console EngageLab] -> [AppPush] -> [Paramètres de base] -> [Paramètres d'intégration], saisissez les paramètres : AppKey, AppID, AppSecret, puis cliquez sur "Enregistrer".

Après avoir tué le processus de l'application, effectuez un push. Si la notification est reçue, l'intégration du canal fabricant est réussie.
Guide d'intégration du canal Vivo
Configurer le support de mavenCentral
Dans le fichier gradle principal du répertoire racine du projet, configurez le support de mavenCentral. (Les nouveaux projets sont généralement configurés par défaut.)
buildscript {
repositories {
mavenCentral()
}
}
allprojects {
repositories {
mavenCentral()
}
}
Configurer les dépendances
Dans la section dependencies du fichier gradle du module application, ajoutez le code suivant :
dependencies{
// La version du fabricant doit correspondre à la version du SDK AppPush
implementation 'com.engagelab.plugin:vivo:5.x.x'
}
Configurer les paramètres
Dans la section defaultConfig du fichier gradle du module application, ajoutez le code suivant :
manifestPlaceholders=[
VIVO_APPKEY : "APPKEY de votre application Vivo", // appkey enregistré sur la plateforme Vivo
VIVO_APPID : "APPID de votre application Vivo", // appid enregistré sur la plateforme Vivo
]
Validation du succès de l'intégration
Si l'intégration est réussie, le journal affichera ce qui suit :
D [MTVivoBusiness] support vivo push
D [MTVivoBusiness] getRegId onTokenSuccess:get token is v2-CRrhwCeK9eY77H6m_EeUqz3zGqmbh0LJPnhvsF0V-ia9OmMHQP9FGCjZ
D [MTPlatformBusiness] onPlatformTokenSuccess, rid:5, platformToken:
{
platform=5,
token=v2-CRrhwCeK9eY77H6m_EeUqz3zGqmbh0LJPnhvsF0V-ia9OmMHQP9FGCjZ
region=NULL
isUserSettings=false
}
Configurer l'obfuscation du code
Si vous utilisez proguard, ajoutez le contenu suivant au fichier de configuration pour éviter que de fausses alertes n'empêchent la compilation :
-dontwarn com.vivo.push.**
-keep class com.vivo.push.**{*; }
-keep class com.vivo.vms.**{*; }
Méthode de test du canal Vivo
- Rendez-vous dans [Console EngageLab] -> [AppPush] -> [Paramètres de base] -> [Paramètres d'intégration], saisissez les paramètres : AppKey, AppID, AppSecret, puis cliquez sur "Enregistrer".
2. Après avoir tué le processus de l'application, effectuez un push. Si la notification est reçue, l'intégration du canal fabricant est réussie.
Si Vivo n'est pas disponible sur le marché, lors du test du push, vous devez ajouter l'appareil de test sur la plateforme push Vivo et n'envoyer le push que via l'API avec le
push_modespécifié.
"options": {
"classification": 1,
"third_party_channel": {
"vivo": {
"pushMode": 1, // Optionnel, ajouté le 21/09/2020. Correspond au champ pushMode de Vivo : “0” pour push formel ; “1” pour push de test, valeur par défaut 0
"distribution_new": "pns_mtpush"
}
}
}
Guide d'intégration du canal OPPO
Configurer le support de mavenCentral
Dans le fichier gradle principal du répertoire racine du projet, configurez le support de mavenCentral. (Les nouveaux projets sont généralement configurés par défaut.)
buildscript {
repositories {
mavenCentral()
}
}
allprojects {
repositories {
mavenCentral()
}
}
Configurer les dépendances
Dans la section dependencies du fichier gradle du module application, ajoutez le code suivant :
dependencies{
// La version du fabricant doit correspondre à la version du SDK AppPush
implementation 'com.engagelab.plugin:oppo:5.x.x'
implementation 'com.engagelab.plugin:oppo_th_push:5.x.x'
// OPPO nécessite l'ajout des dépendances suivantes
implementation 'com.google.code.gson:gson:2.10.1'
implementation 'commons-codec:commons-codec:1.6'
implementation 'androidx.annotation:annotation:1.1.0'
}
Configurer les paramètres
Dans la section defaultConfig du fichier gradle du module application, ajoutez le code suivant :
Les paramètres OPPO doivent être préfixés par "OP-".
manifestPlaceholders=[
OPPO_APPKEY : "OP-APPKEY de votre application OPPO", // appkey enregistré sur la plateforme OPPO
OPPO_APPID : "OP-APPID de votre application OPPO", // appid enregistré sur la plateforme OPPO
OPPO_APPSECRET: "OP-APPSECRET de votre application OPPO" // appsecret enregistré sur la plateforme OPPO
]
Configurer l'obfuscation du code
Si vous utilisez proguard, ajoutez le contenu suivant au fichier de configuration pour éviter que de fausses alertes n'empêchent la compilation :
-dontwarn com.coloros.mcsdk.**
-keep class com.coloros.mcsdk.** { *; }
-dontwarn com.heytap.**
-keep class com.heytap.** { *; }
-dontwarn com.mcs.**
-keep class com.mcs.** { *; }
Validation du succès de l'intégration
Si l'intégration est réussie, le journal affichera ce qui suit :
D [MTOppoBusiness] support oppo push
D [MTOppoBusiness] onTokenSuccess:get token is OnePlus_CN_0e3c2f966c9d01d4e2423cbc9e7598b6
D [MTPlatformBusiness] onPlatformTokenSuccess, rid:5, platformToken:
{
platform=4,
token=OnePlus_CN_0e3c2f966c9d01d4e2423cbc9e7598b6
region=NULL
isUserSettings=false
}
Méthode de test du canal OPPO
- Rendez-vous dans [Console EngageLab] -> [AppPush] -> [Paramètres de base] -> [Paramètres d'intégration], saisissez les paramètres : AppKey, AppID, AppSecret, MasterSecret, puis cliquez sur "Enregistrer".
2. Après avoir tué le processus de l'application, effectuez un push. Si la notification est reçue, l'intégration du canal fabricant est réussie.
Si l'application n'est pas disponible, les tests nécessitent de demander une autorisation de test push sur la plateforme OPPO. Chaque application peut envoyer 1000 messages publics par jour.
Guide d'intégration du canal FCM
Configurer le support de mavenCentral
Dans le fichier gradle principal du répertoire racine du projet, configurez le support de mavenCentral et la dépendance google-services.
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.google.gms:google-services:4.3.15'
}
}
allprojects {
repositories {
mavenCentral()
maven { url "https://maven.google.com" }
}
}
Ajouter le plugin FCM
En bas du fichier build.gradle du module application, ajoutez la ligne suivante pour activer le plugin gradle :
apply plugin: 'com.google.gms.google-services'
Configurer les dépendances
Dans la section dependencies du fichier gradle du module application, ajoutez le code suivant :
dependencies {
// La version du fabricant doit correspondre à la version du SDK AppPush
implementation 'com.engagelab.plugin:google:5.x.x'
implementation 'com.google.firebase:firebase-messaging:25.0.0'
}
Dans la section android du fichier gradle du module application, ajoutez le code suivant :
android {
// google push nécessite java 1.8
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
Configurer le fichier google-services.json
Consultez le Guide de demande des paramètres du canal fabricant pour obtenir le fichier google-services.json et le placer dans le répertoire app.

Configurer l'icône de notification FCM
Ajoutez la configuration suivante dans le fichier AndroidManifest.xml pour définir l'icône de notification FCM.
<meta-data android:name="com.google.firebase.messaging.default_notification_icon"
android:resource="@drawable/Votre icône de notification" />
Validation du succès de l'intégration
Si l'intégration est réussie, le journal affichera ce qui suit :
D [MTGoogleBusiness] support google push
D [MTPlatformBusiness] onPlatformTokenSuccess, rid:5, platformToken:
{
platform=8,
token=dj793yH_RO6FqNyKImQJYV:APA91bExj3PSVv50pwtl83LXVeB_HKOCSkyB6qCE12TIwIRl-RKiqCfXjvCshcqVrqn_8htlNBa8_A_8ixq7YIxfrloxig2BryZPCkunyx_z2drz0L-C2K8R7J8Yrojs61WCsF-BZj8h
region=NULL
isUserSettings=false
}
Méthode de test du canal FCM
- Prérequis pour le test :
- Le système du téléphone doit disposer des services Google Play, version 17.3.4 ou supérieure.
- Le test nécessite une connexion à un VPN étranger et l'accès du réseau du téléphone à Google.
- Si vous utilisez un téléphone domestique pour le test, l'application doit rester en arrière-plan ; le test échouera si l'application est fermée, car les fabricants locaux peuvent tuer le processus en arrière-plan.
Rendez-vous dans [Console EngageLab] -> [AppPush] -> [Paramètres de base] -> [Paramètres d'intégration], saisissez le paramètre : App Secret, puis cliquez sur "Enregistrer".

Si vous testez en Chine, vous devez définir le code pays après l'initialisation.
public class ExampleApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
MTCorePrivatesApi.configDebugMode(this, true);
// Définir le code pays -- Ne pas définir ceci en production
MTGlobal.setCountryCode("US");
// Initialiser
MTPushPrivatesApi.init(this);
}
}
- Dans le backend AppPush, vérifiez si le push a été envoyé via le canal FCM ou le canal EngageLab.

Guide d'intégration du canal Honor
Configurer le support de mavenCentral
Dans le fichier gradle principal du répertoire racine du projet, configurez le support de mavenCentral. (Les nouveaux projets sont généralement configurés par défaut.)
buildscript {
repositories {
...
mavenCentral()
...
}
}
allprojects {
repositories {
...
mavenCentral()
...
}
}
Configurer les paramètres et dépendances
Dans le fichier build.gradle du module projet, ajoutez le code suivant :
defaultConfig {
...
manifestPlaceholders = [
...
HONOR_APPID : "APP ID de votre application Honor", // APP ID enregistré sur la plateforme Honor
...
]
...
}
dependencies {
...
// La version du fabricant doit correspondre à la version du SDK AppPush
implementation 'com.engagelab.plugin:honor:5.x.x'
implementation 'com.engagelab.plugin:honor_th_push:5.x.x'
...
}
Configurer le certificat de signature
Dans le fichier build.gradle, configurez la signature correspondant au certificat d'empreinte ajouté dans le backend Honor.
Le service Honor exige que l'application soit signée pour une inscription réussie. Vous pouvez obtenir le certificat d'empreinte correspondant avec la commande
keytool -list -v -keystore <chemin du fichier keystore>.
Validation du succès de l'intégration
Si l'intégration est réussie, le journal affichera ce qui suit :
D [MTHonorBusiness] support honor push
D [MTHonorBusiness] onTokenSuccess:get token is s18069ps301291893q1ssro2o40s1630-n262n542r9669q62o83s390306179rro-775875632-654-6105326555582-PA-0052993947080949113-5
D [MTPlatformBusiness] onPlatformTokenSuccess, rid:5, platformToken:
{
platform=7,
token=s18069ps301291893q1ssro2o40s1630-n262n542r9669q62o83s390306179rro-775875632-654-6105326555582-PA-0052993947080949113-5
region=NULL
isUserSettings=false
}
Configurer l'obfuscation du code
Si vous utilisez proguard, ajoutez le contenu suivant au fichier de configuration pour éviter que de fausses alertes n'empêchent la compilation :
-ignorewarnings
-keepattributes *Annotation*
-keepattributes Exceptions
-keepattributes InnerClasses
-keepattributes Signature
-keepattributes SourceFile,LineNumberTable
-keep class com.hihonor.push.**{*;}
Méthode de test du canal Honor
- Rendez-vous dans [Console EngageLab] -> [AppPush] -> [Paramètres de base] -> [Paramètres d'intégration], saisissez les paramètres : App ID, Client ID, Client Secret, App Secret, puis cliquez sur "Enregistrer".

- Après avoir tué le processus de l'application, effectuez un push. Si la notification est reçue, l'intégration du canal fabricant est réussie.
Comment remonter les notifications fabricant sans intégrer le SDK fabricant mais en utilisant tout de même EngageLab pour pousser les messages fabricant
/**
* Remonter l'arrivée d'une notification du canal fabricant
*
* Remontée via http/https
*
* @param context Non nul
* @param messageId ID de message EngageLab, non nul
* @param platform Fabricant, valeurs possibles (1:mi, 2:huawei, 3:meizu, 4:oppo, 5:vivo, 8:google)
* @param platformMessageId ID de message fabricant, peut être nul
*/
public static void reportNotificationArrived(Context context, String messageId, byte platform, String platformMessageId)
/**
* Remonter le clic sur une notification du canal fabricant
*
* Remontée via http/https
*
* @param context Non nul
* @param messageId ID de message EngageLab, non nul
* @param platform Fabricant, valeurs possibles (1:mi, 2:huawei, 3:meizu, 4:oppo, 5:vivo, 7:honor, 8:google)
* @param platformMessageId ID de message fabricant, peut être nul
*/
public static void reportNotificationClicked(Context context, String messageId, byte platform, String platformMessageId)
/**
* Remonter la suppression d'une notification du canal fabricant
*
* Remontée via http/https
*
* @param context Non nul
* @param messageId ID de message EngageLab, non nul
* @param platform Fabricant, valeurs possibles (1:mi, 2:huawei, 3:meizu, 4:oppo, 5:vivo, 7:honor, 8:google)
* @param platformMessageId ID de message fabricant, peut être nul
*/
public static void reportNotificationDeleted(Context context, String messageId, byte platform, String platformMessageId)
/**
* Remonter l'ouverture d'une notification du canal fabricant
*
* Remontée via http/https
*
* @param context Non nul
* @param messageId ID de message EngageLab, non nul
* @param platform Fabricant, valeurs possibles (1:mi, 2:huawei, 3:meizu, 4:oppo, 5:vivo, 7:honor, 8:google)
* @param platformMessageId ID de message fabricant, peut être nul
*/
public static void reportNotificationOpened(Context context, String messageId, byte platform, String platformMessageId)
/**
* Télécharger le token fabricant
*
* Doit être appelé après l'établissement réussi de la connexion longue EngageLab, sinon invalide. L'état de connexion longue est établi lorsque le callback `MTCommonReceiver.onConnectStatus` retourne true.
*
* Téléchargement via TCP
*
* @param context Non nul
* @param platform Fabricant, valeurs possibles (1:mi, 2:huawei, 3:meizu, 4:oppo, 5:vivo, 7:honor, 8:google)
* @param token Token retourné par le fabricant, non nul
*/
public static void uploadPlatformToken(Context context, byte platform, String token)

