API SDK Android
Description de l'interface SDK
- MTMAApi, qui regroupe toutes les interfaces liées à la fonctionnalité MA du SDK.
Activer la fonction MA
Versions prises en charge
Pris en charge à partir de la version 5.0.0
Définition de l'interface
- start(UserIdentity userIdentity, CallBack callBack)
- Description de l'interface :
- Démarre l'utilisation de la fonction MA. Les informations d'identification utilisateur peuvent être définies simultanément lors de l'activation.
- Description des paramètres :
- userIdentity : L'identification de l'appel, peut être définie sur null s'il n'y en a pas.
- setUserId(String userId) : userId, définissez ici l'identifiant unique de l'utilisateur connecté.
- setAnonymousId(String anonymousId) : anonymousId. Lorsque l'utilisateur n'est pas connecté mais fournit d'autres informations identifiables, cela peut être défini comme identifiant anonyme, tel qu'une adresse e-mail ou un identifiant généré par un tiers.
- callBack : Le callback des données de résultat.
- userIdentity : L'identification de l'appel, peut être définie sur null s'il n'y en a pas.
- Description du retour :
onCallBack(int code, String message)- code : Le code de retour. 0 indique une acquisition réussie, -1 indique un échec. Voir la description du paramètre message pour plus de détails.
- message : Description de la raison.
- Description de l'interface :
Exemple d'appel
MTMAApi.getInstance(this).start(new CallBack() {
@Override
public void onCallBack(int code, String message) {
Log.e(TAG, "start code:" + code);
Log.e(TAG, "startmessage:" + message);
}
});
Définir l'identification utilisateur
Il est recommandé de définir cette interface lorsque l'utilisateur se connecte ou fournit des informations pertinentes pour obtenir l'EUID correspondant à l'utilisateur.
Versions prises en charge
Pris en charge à partir de la version 5.0.0
Définition de l'interface
- _setUserIdentity(UserIdentity userIdentity, CallBack callBack) _
- Description de l'interface :
- Définit l'identification utilisateur, comme le numéro de carte de membre de l'utilisateur.
- Description des paramètres :
- userIdentity : L'identification de l'appel.
- setUserId(String userId) : userId, définissez ici l'identifiant unique de l'utilisateur connecté.
- setAnonymousId(String anonymousId) : anonymousId. Lorsque l'utilisateur n'est pas connecté mais fournit d'autres informations identifiables, cela peut être défini comme identifiant anonyme, tel qu'une adresse e-mail ou un identifiant généré par un tiers.
- callBack : Le callback de l'interface.
- userIdentity : L'identification de l'appel.
- Description du retour :
onCallBack(int code, String message)- code : Le code de retour. 0 indique une acquisition réussie, -1 indique un échec. Voir la description du paramètre message pour plus de détails.
- Description de l'interface :
Exemple d'appel
UserIdentity userIdentity = new UserIdentity();
userIdentity.setUserId("Votre userId");
userIdentity.setAnonymousId("Votre AnonymousId");
MTMAApi.getInstance(this).setUserIdentity(userIdentity, new CallBack() {
@Override
public void onCallBack(int code, String message) {
MTCommonLog.e(TAG, "setUserIdentity code:" + code);
MTCommonLog.e(TAG, "setUserIdentity message:" + message);
}
});
Définir les coordonnées de l'utilisateur
Lorsque les coordonnées de l'utilisateur changent, cette interface peut être utilisée pour mettre à jour les "coordonnées" de l'utilisateur.
Versions prises en charge
Pris en charge à partir de la version 5.0.0
Définition de l'interface
- setUserContact(JSONObject contacts, CallBack callBack)
- Description de l'interface :
- Définit les "coordonnées" de l'utilisateur.
- Description des paramètres :
- contacts : Définit plusieurs coordonnées. La clé est le nom de la coordonnée, la valeur est la valeur de la coordonnée. Actuellement, 4 types de coordonnées sont pris en charge : email, mobile_phone, landline_phone et whatsapp_phone.
- callBack : Le callback de l'interface.
- Description du retour :
onCallBack(int code, String message)- code : Le code de retour. 0 indique une acquisition réussie, -1 indique un échec. Voir la description du paramètre message pour plus de détails.
- message : Description de la raison.
- Description de l'interface :
Exemple d'appel
JSONObject contacts = new JSONObject();
try {
contacts.put("key1", "cc");
contacts.put("key2", "dd");
} catch (JSONException e) {
e.printStackTrace();
}
MTMAApi.getInstance(this).setUserContact(contacts, new CallBack() {
@Override
public void onCallBack(int code, String message) {
Log.e(TAG, "setUserContact code:" + code);
Log.e(TAG, "setUserContact message:" + message);
}
});
Obtenir l'EUID
Versions prises en charge
Pris en charge à partir de la version 5.0.0
Définition de l'interface
- getEuid()
- Description de l'interface :
- Obtient l'EUID, qui représente l'identifiant utilisateur unique.
- Description de l'interface :
Exemple d'appel
MTMAApi.getInstance(this).getEuid();
Définir l'intervalle de rapport des données envoyées
Fonctionne conjointement avec l'interface setMaxEventCacheCount. Un rapport sera effectué dès qu'une des conditions est remplie.
Versions prises en charge
Pris en charge à partir de la version 5.0.0
Définition de l'interface
- setReportInterval(int interval)
- Description de l'interface :
- Définit l'intervalle de rapport des données envoyées. Si cette interface n'est pas appelée, les données d'événement sont rapportées toutes les 10 secondes par défaut.
- L'intervalle de rapport est mis en cache en mémoire et doit être appelé à chaque cycle de vie de l'application pour être effectif.
- Description des paramètres
- interval : L'intervalle de rapport, en secondes (s).
- Description de l'interface :
Exemple d'appel
MTMAApi.getInstance(this).setReportInterval(10);
Définir la limite supérieure du cache d'événements
Fonctionne avec l'interface setReportInterval. Un rapport sera effectué dès qu'une des conditions est remplie.
Versions prises en charge
Pris en charge à partir de la version 5.0.0
Définition de l'interface
- setMaxEventCacheCount(int count)
- Description de l'interface :
- Définit la limite supérieure du nombre d'entrées du cache d'événements, qui est de 50 par défaut et ne peut pas dépasser 500 au maximum.
- Lorsque la quantité de cache est dépassée, toutes les données seront rapportées.
- Description des paramètres
- count : La limite supérieure du nombre d'entrées du cache d'événements.
- Description de l'interface :
Exemple d'appel
MTMAApi.getInstance(this).setMaxEventCacheCount(50);
Définir le délai d'expiration de la session
Versions prises en charge
Pris en charge à partir de la version 5.0.0
Définition de l'interface
- setNoActiveSessionEndDurationTime(int duration)
- Description de l'interface :
- Lorsque l'application est placée en arrière-plan, le temps d'expiration de la session commence à être calculé. Après avoir dépassé le temps défini (30 minutes par défaut), cette session prendra fin.
- Description des paramètres
- duration : La durée d'expiration, en secondes (s).
- Description de l'interface :
Exemple d'appel
MTMAApi.getInstance(this).setNoActiveSessionEndDurationTime(5*60);
Définir les propriétés UTM
Versions prises en charge
Pris en charge à partir de la version 5.0.0
Définition de l'interface
- setUtmProperties(UtmProperties utmProperties)
- Description de l'interface :
- Définit les propriétés UTM. Si les développeurs peuvent identifier de quelle publicité l'utilisateur provient pour accéder à l'application, il est recommandé de définir les informations UTM, et nous transmettrons ce paramètre lors du rapport des événements.
- Description des paramètres :
- utmProperties : L'objet propriété UTM.
- utm_source : La source de la campagne publicitaire.
- utm_medium : Le support de la campagne publicitaire.
- utm_term : Le terme de la campagne publicitaire.
- utm_content : Le contenu de la campagne publicitaire.
- utm_campaign : Le nom de la campagne publicitaire.
- Description de l'interface :
Exemple d'appel
UtmProperties utmProperties = new UtmProperties();
utmProperties.setUtmSource("Votre utm_source");
utmProperties.setUtmCampaign("Votre utm_campaign");
utmProperties.setUtmContent("Votre utm_content");
utmProperties.setUtmId("Votre utm_id" );
utmProperties.setUtmMedium("Votre utm_medium");
utmProperties.setUtmTerm("Votre utm_term");
MTMAApi.getInstance(this).setUtmProperties(utmProperties);
Définir l'autorisation de collecte
Versions prises en charge
Pris en charge à partir de la version 5.0.0
Définition de l'interface
- setCollectControl(MTMACollectControl control)
- Description de l'interface :
- Définit l'autorisation de collecte. Si vous devez activer/désactiver la collecte de certaines données, veuillez appeler cette interface.
- Description des paramètres :
- control : Le paramètre d'autorisation, activé par défaut.
- Description de l'interface :
Exemple d'appel
try {
MTMACollectControl mtmaCollectControl = new MTMACollectControl();
mtmaCollectControl.setIMEI(true);
mtmaCollectControl.setAAID(true);
MTMAApi.getInstance(this).setCollectControl(mtmaCollectControl);
} catch (Throwable e) {
e.printStackTrace();
}
Définir les propriétés utilisateur
Définissez la valeur des propriétés utilisateur. Si les propriétés utilisateur n'existent pas, elles seront automatiquement créées en arrière-plan.
Écraser et mettre à jour les propriétés utilisateur
- propertySet(final JSONObject properties, final CallBack callBack)
- Description de l'interface :
- Met à jour les valeurs des propriétés utilisateur par lot en écrasant.
- Seules les dernières données rapportées sont conservées, écrasant les données historiques, comme le niveau de membre de l'utilisateur.
- Description des paramètres :
- properties : Propriétés utilisateur.
- callBack : Le callback de l'interface.
- Description du retour :
onCallBack(int code, String message)- code : Le code de retour. 0 indique une acquisition réussie, -1 indique un échec. Voir la description du code d'erreur pour plus de détails.
- message : Description de la raison.
- Exemple d'appel :
- Description de l'interface :
try {
JSONObject properties = new JSONObject();
properties.put("Nom de votre propriété utilisateur", "Valeur de votre propriété");
properties.put("Nom de votre propriété utilisateur 2", "Valeur de votre propriété 2");
properties.put("Nom de votre propriété utilisateur 3", "Valeur de votre propriété 3");
MTMAApi.getInstance(this).propertySet(properties, new CallBack() {
@Override
public void onCallBack(int code, String message) {
}
});
} catch (Throwable e) {
e.printStackTrace();
}
- propertySet(String property, Object value, CallBack callBack)
- Description de l'interface :
- Met à jour la valeur d'une seule propriété utilisateur en écrasant.
- Seules les dernières données rapportées sont conservées, écrasant les données historiques, comme le niveau de membre de l'utilisateur.
- Description des paramètres :
- property : Le nom de la propriété utilisateur.
- value : La valeur de la propriété utilisateur.
- callBack : Le callback de l'interface.
- Description du retour :
onCallBack(int code, String message)- code : Le code de retour. 0 indique une acquisition réussie, -1 indique un échec. Voir la description du code d'erreur pour plus de détails.
- message : Description de la raison.
- Exemple d'appel :
- Description de l'interface :
MTMAApi.getInstance(this).propertySet("Nom de votre propriété utilisateur", "Valeur de votre propriété", new CallBack() {
@Override
public void onCallBack(int code, String message) {
}
});
Incrémenter et mettre à jour les propriétés utilisateur
- propertyIncrease(final Map<String, ? extends Number> properties, CallBack callBack)
- Description de l'interface :
- Définit un incrément pour les valeurs des propriétés utilisateur, pour des requêtes par lot.
- Cumule toutes les données rapportées, comme le montant de consommation cumulé.
- Cette interface ne peut être appelée que pour des propriétés utilisateur de type numérique, sinon elle sera ignorée. Si cette propriété utilisateur n'existait pas auparavant, la valeur initiale est considérée comme 0.
- Description des paramètres :
- properties : Propriétés utilisateur.
- callBack : Le callback de l'interface.
- Description du retour :
onCallBack(int code, String message)- code : Le code de retour. 0 indique une acquisition réussie, -1 indique un échec. Voir la description du code d'erreur pour plus de détails.
- message : Description de la raison.
- Exemple d'appel :
- Description de l'interface :
Map<String, Number> properties = new HashMap<>();
properties.put("Nom de votre propriété utilisateur", 1);
properties.put("Nom de votre propriété utilisateur 2", 2);
properties.put("Nom de votre propriété utilisateur 3", 3);
MTMAApi.getInstance(this).propertyIncrease(properties, new CallBack() {
@Override
public void onCallBack(int code, String message) {
}
});
- propertyIncrease(final String property, final Number value, CallBack callBack)
- Description de l'interface :
- Définit un incrément pour la valeur d'une propriété utilisateur, pour une seule requête.
- Cumule toutes les données rapportées, comme le montant de consommation cumulé.
- Cette interface ne peut être appelée que pour des propriétés utilisateur de type numérique, sinon elle sera ignorée. Si cette propriété utilisateur n'existait pas auparavant, la valeur initiale est considérée comme 0.
- Description des paramètres :
- property : Le nom de la propriété utilisateur.
- value : La valeur de la propriété utilisateur.
- callBack : Le callback de l'interface.
- Description du retour :
onCallBack(int code, String message)- code : Le code de retour. 0 indique une acquisition réussie, -1 indique un échec. Voir la description du code d'erreur pour plus de détails.
- message : Description de la raison.
- Exemple d'appel :
- Description de l'interface :
MTMAApi.getInstance(this).propertyIncrease("Nom de votre propriété utilisateur", 1, new CallBack() {
@Override
public void onCallBack(int code, String message) {
}
});
Ajouter des propriétés utilisateur
- propertyAdd(final String property, final String value, CallBack callBack)
- Description de l'interface :
- Ajoute une valeur à la valeur d'une propriété utilisateur, pour une seule requête.
- Les éléments de cet ensemble peuvent être ajoutés en continu, et les doublons sont supprimés lors du stockage en base de données. Si ABC existe déjà et que CD est ajouté, le résultat final sera ABCD.
- Description des paramètres :
- property : Le nom de la propriété utilisateur.
- value : La valeur de la propriété utilisateur.
- callBack : Le callback de l'interface.
- Description du retour :
onCallBack(int code, String message)- code : Le code de retour. 0 indique une acquisition réussie, -1 indique un échec. Voir la description du code d'erreur pour plus de détails.
- message : Description de la raison.
- Exemple d'appel :
- Description de l'interface :
MTMAApi.getInstance(this).propertyAdd("Nom de votre propriété utilisateur", "Valeur de votre propriété utilisateur", new CallBack() {
@Override
public void onCallBack(int code, String message) {
}
});
- propertyAdd(final String property, final Set values, CallBack callBack)
- Description de l'interface :
- Ajoute des valeurs à la valeur d'une propriété utilisateur, ajoutant plusieurs valeurs à la fois.
- Les éléments de cet ensemble peuvent être ajoutés en continu, et les doublons sont supprimés lors du stockage en base de données. Si ABC existe déjà et que CD est ajouté, le résultat final sera ABCD.
- Description des paramètres :
- property : Le nom de la propriété utilisateur.
- value : La valeur de la propriété utilisateur.
- callBack : Le callback de l'interface.
- Description du retour :
onCallBack(int code, String message)- code : Le code de retour. 0 indique une acquisition réussie, -1 indique un échec. Voir la description du code d'erreur pour plus de détails.
- message : Description de la raison.
- Exemple d'appel :
- Description de l'interface :
Set<String> properties = new HashSet<>();
properties.add("Valeur de votre propriété utilisateur");
properties.add("Valeur de votre propriété utilisateur 2");
properties.add("Valeur de votre propriété utilisateur 3");
MTMAApi.getInstance(this).propertyAdd("Nom de votre propriété utilisateur", properties, new CallBack() {
@Override
public void onCallBack(int code, String message) {
}
});
Supprimer des propriétés utilisateur
- propertyRemove(final String property, String values, final CallBack callBack)
- Description de l'interface :
- Supprime la valeur d'une propriété utilisateur.
- Cette valeur est un élément de l'ensemble, et les doublons sont supprimés lors du stockage en base de données. Si ABCD existe déjà et que D est supprimé, le résultat final sera ABC.
- Description des paramètres :
- property : Le nom de la propriété utilisateur.
- value : La valeur de la propriété utilisateur.
- callBack : Le callback de l'interface.
- Description du retour :
onCallBack(int code, String message)- code : Le code de retour. 0 indique une acquisition réussie, -1 indique un échec. Voir la description du code d'erreur pour plus de détails.
- message : Description de la raison.
- Exemple d'appel :
- Description de l'interface :
MTMAApi.getInstance(this).propertyRemove("Nom de votre propriété utilisateur", "Valeur de votre propriété utilisateur", new CallBack() {
@Override
public void onCallBack(int code, String message) {
}
});
- propertyRemove(final String property, Set
values, final CallBack callBack) - Description de l'interface :
- Supprime plusieurs valeurs d'une propriété utilisateur à la fois.
- Ces valeurs sont des éléments de l'ensemble, et les doublons sont supprimés lors du stockage en base de données. Si ABCD existe déjà et que CD est supprimé, le résultat final sera AB.
- Description des paramètres :
- property : Le nom de la propriété utilisateur.
- value : La valeur de la propriété utilisateur.
- callBack : Le callback de l'interface.
- Description du retour :
onCallBack(int code, String message)- code : Le code de retour. 0 indique une acquisition réussie, -1 indique un échec. Voir la description du code d'erreur pour plus de détails.
- message : Description de la raison.
- Exemple d'appel :
- Description de l'interface :
Set<String> properties = new HashSet<>();
properties.add("Valeur de votre propriété utilisateur");
properties.add("Valeur de votre propriété utilisateur 2");
properties.add("Valeur de votre propriété utilisateur 3");
MTMAApi.getInstance(this).propertyRemove("Nom de votre propriété utilisateur", properties, new CallBack() {
@Override
public void onCallBack(int code, String message) {
}
});
Supprimer des propriétés utilisateur
Versions prises en charge
Pris en charge à partir de la version 5.0.0
Définition de l'interface
- propertyDelete(final String property, final CallBack callBack)
- Description de l'interface :
- Supprime toutes les valeurs d'une certaine propriété utilisateur.
- Description des paramètres :
- property : Le nom de la propriété utilisateur.
- callBack : Le callback de l'interface.
- Description du retour :
onCallBack(int code, String message)- code : Le code de retour. 0 indique une acquisition réussie, -1 indique un échec. Voir la description du code d'erreur pour plus de détails.
- message : Description de la raison.
- Description de l'interface :
Exemple d'appel
MTMAApi.getInstance(this).propertyDelete("Nom de votre propriété utilisateur", new CallBack() {
@Override
public void onCallBack(int code, String message) {
}
});
Rapport d'événement personnalisé
Versions prises en charge
Pris en charge à partir de la version 5.0.0
Définition de l'interface
- onEvent(String eventKey, JSONObject properties)
- Description de l'interface :
- Rapporte un événement personnalisé.
- Description des paramètres :
- eventKey : Le nom de l'événement.
- properties : Les propriétés de l'événement. La clé est le nom de la propriété, la valeur est la valeur de la propriété.
- Description de l'interface :
Exemple d'appel
JSONObject properties = new JSONObject();
properties.put("key1", "v1");
properties.put("key2", "v2");
MTMAApi.getInstance(this).onEvent("Nom de votre événement", properties);
Codes d'erreur :
| code | Valeur | Description |
|---|---|---|
| CODE_SUCCEED | 0 | Succès |
| CODE_UNKNOWN | -1 | Erreur inconnue |
| CODE_START_FAIL | -2 | La méthode start n'a pas été appelée, ou l'appel à start a échoué, ou le projet a été changé. Veuillez rappeler start. |
| CODE_VALID | -3 | Échec de la validation des paramètres |
| CODE_ENABLE | -4 | Le projet est fermé |
| CODE_REGISTRATIONID | -5 | Échec de l'enregistrement push |
| CODE_SWITCH | -6 | Le projet a été changé. Veuillez rappeler start. |

