Tests

Lancez un build de debug, ouvrez l’app une fois et regardez le tableau de bord. Cette page explique ce qui compte comme appareil de test, comment voir ses données et comment tester les liens profonds différés sans publier sur Google Play.

Appareils de test

Une installation marquée comme appareil de test envoie de vraies données, mais le tableau de bord les tient à l’écart de vos chiffres tant que vous ne les demandez pas. Ainsi, vos propres tests ne gonflent jamais les installations, la conversion ou les revenus.

PlateformeMarquée comme appareil de test quand
AndroidLe build est debuggable (le cas par défaut des builds de debug), ou vous passez UnolinkOptions(debug = true). Aussi, à partir du SDK 0.3.0, un build de release que vous avez installé vous-même avec adb ou Android Studio, ainsi que les téléphones du rapport de pré-lancement de Google et de Firebase Test Lab.
iOSVous passez UnolinkOptions(debug: true). Utilisez #if DEBUG, car une bibliothèque compilée ne voit pas vos réglages de build. À partir du SDK 0.3.0, les builds TestFlight et Xcode sont des appareils de test d’eux-mêmes.
React NativeVous passez { debug: __DEV__ }, plus les règles iOS et Android ci-dessus.
FlutterVous passez debug: kDebugMode, plus les règles iOS et Android ci-dessus.

Une installation qui fait un achat sandbox RevenueCat (TestFlight, testeurs de licence sur Google Play) devient aussi un appareil de test, avec tout ce qu’elle a envoyé.

Les canaux de test Google Play (interne, fermé, ouvert) ne se distinguent pas de la version publiée sur le téléphone. Marquez ces builds vous-même, par exemple avec une variable définie au moment du build :

// React Native / Expo: set EXPO_PUBLIC_UNOLINK_TEST=1 only for testing-track builds
Unolink.configure("ulk_…", { debug: __DEV__ || process.env.EXPO_PUBLIC_UNOLINK_TEST === "1" })

Voir les données de test dans le tableau de bord

Ouvrez votre app → Entonnoir ou Parcours et activez Inclure les appareils de test. Les installations de test apparaissent alors à côté des vraies. Désactivez-le avant de lire vos vrais chiffres.

Une première ouverture apparaît quelques secondes après le lancement de l’app. Les événements sont envoyés par lots toutes les 15 secondes tant que l’app est ouverte, et immédiatement quand elle passe en arrière-plan : appuyez sur le bouton d’accueil pour les envoyer tout de suite.

Logs de debug

Le SDK reste silencieux quand tout fonctionne : par défaut, il ne logue que les avertissements et les erreurs. Pour voir chaque étape, augmentez le niveau de log.

// Android: Logcat, tag "Unolink"
Unolink.configure(this, "ulk_…", UnolinkOptions(logLevel = LogLevel.DEBUG))
// iOS: Xcode console, prefix "[Unolink]"
Unolink.configure(apiKey: "ulk_…", options: UnolinkOptions(logLevel: .debug, debug: true))
// React Native: Xcode console or Logcat, tag "Unolink"
Unolink.configure("ulk_…", { debug: __DEV__, logLevel: "debug" })
// Flutter: Xcode console or Logcat, tag "Unolink"
await Unolink.configure('ulk_…', debug: kDebugMode, logLevel: UnolinkLogLevel.debug);

Remettez la valeur par défaut avant de publier.

Simuler un referrer d’installation Play (Android)

Google Play ne transmet un referrer d’installation que pour de vraies installations depuis Google Play. Pour tester votre code de lien profond différé sans en avoir, donnez un faux referrer à un build de debug Android natif :

Unolink.configure(this, "ulk_…", UnolinkOptions(
    debugInstallReferrer = "unolink_click_id=clk_01JA0000000000000000000000&unolink_deep_link=%2Fpromo%2F3for2&unolink_p_offer=3for2",
))
  • Il n’est utilisé que dans les builds debuggables. Les builds de release l’ignorent et lisent le vrai referrer.
  • Il n’est lu qu’au premier lancement, comme le vrai. Désinstallez l’app, ou effacez ses données, avant chaque essai.
  • Votre listener de lien profond différé reçoit deepLink = "/promo/3for2" et params = {offer=3for2} depuis le referrer. Le SDK logue un avertissement indiquant qu’il a utilisé le referrer simulé.
  • L’installation elle-même n’est attribuée à un lien que si l’identifiant de clic est un vrai clic sur l’un des liens de votre app.

Cette option fait partie du SDK Android natif. Avec React Native et Flutter, testez avec une vraie installation comme ci-dessous.

Tester avec une vraie installation (Android)

  1. Importez un build dans Google Play Console → Testing → Internal testing, et ajoutez-vous comme testeur.
  2. Sur le téléphone, désinstallez l’app, puis ouvrez l’un de vos liens Unolink et installez depuis la fiche Play qu’il ouvre.
  3. Ouvrez l’app. L’installation est attribuée à ce lien, et le listener de deep link s’exécute si le lien a un deep link.

Plus de détails dans Liens profonds différés Android.

iPhone

Sur iPhone, les installations et les événements sont comptés, mais votre app n’apprend jamais sur quel lien on a appuyé : il n’y a pas de lien profond différé, car Apple n’a pas de referrer d’installation et Unolink ne fait jamais de fingerprinting. Le tableau de bord associe tout de même les installations iPhone à leur lien, sans fingerprinting. Sur iOS, testez donc que les installations et les événements arrivent. Il n’y a pas de deep link à vérifier dans l’app.

Checklist

  • La première ouverture apparaît dans Parcours avec Inclure les appareils de test activé.
  • Chaque appel d’entonnoir apparaît comme une étape sur cette installation.
  • Avec RevenueCat : un achat sandbox apparaît sur la même installation après setUserId.
  • Android : une installation en test interne Play depuis un lien affiche le lien, et le deep link s’ouvre.
  • Les builds de release sont configurés sans debug: true et avec le niveau de log par défaut.

Il manque quelque chose ? Voir Dépannage.