Questions fréquentes sur le SDK Engage

Questions fréquentes sur la publication

Qui gère la tâche de publication de contenu ?

Le développeur de l'application gère la tâche de publication de contenu et envoie les requêtes au service Engage. De cette manière, les développeurs partenaires peuvent mieux contrôler quand et comment publier du contenu auprès des utilisateurs. Cette approche évite de réactiver trop souvent l'application partenaire pour publier du contenu.

Les développeurs doivent-ils publier tous les types de clusters ?

Bien que, techniquement, les développeurs soient libres de ne publier qu'un seul cluster, nous conseillons vivement d'en inclure d'autres. Sinon, les développeurs passent à côté d'une occasion d'améliorer l'engagement des utilisateurs avec leur contenu. Nous vous recommandons fortement de publier tous les types de clusters pour chaque secteur.

À quelle fréquence les partenaires développeurs doivent-ils publier des données à l'aide de WorkManager pendant l'exécution de l'application ?

Cette décision revient aux partenaires développeurs. Google recommande de publier du contenu de recommandation générale une ou deux fois par jour, et d'utiliser une méthodologie basée sur les événements pour le contenu lié au panier, à la réorganisation et à la poursuite (par exemple, démarrer le worker en tant que rappel de l'utilisateur ajoutant des articles au panier ou de l'utilisateur arrêtant un film à mi-parcours). Pour les applications sociales, il est essentiel de publier des clusters de recommandations mis à jour après chaque utilisation de l'application. Les utilisateurs d'applications sociales sont plus intéressés par les recommandations les plus récentes et préfèrent idéalement ne voir un post qu'une seule fois.

Quand le développeur doit-il appeler les API de suppression ?

Les API de suppression ne doivent être appelées que lorsqu'il n'y a pas de contenu à publier. N'appelez pas des API de suppression et de publication ultérieurement pour remplacer le contenu. les API de publication suppriment automatiquement le contenu précédent.

Questions fréquentes sur les intents de diffusion

Pourquoi les développeurs d'applications Android doivent-ils s'enregistrer pour les intents de diffusion ?

Pour pouvoir présenter des contenus actuels à l'utilisateur, vous devez utiliser des intents de diffusion. Cela permet de déclencher une synchronisation des données dans les cas où les utilisateurs ne se serviraient pas souvent de l'application.

Impossible de tester l'intent de diffusion

L'application de validation ne permet pas de tester l'intent de diffusion avec autorisation. Vous devez supprimer les autorisations lors des tests et les ajouter de nouveau avant de passer à la version de production du SDK à l'étape 6.

Exécution en arrière-plan non autorisée

Lors de l'enregistrement de l'intent de diffusion, vous pouvez rencontrer l'erreur suivante :

Background execution not allowed: receiving Intent
{ act=com.google.android.engage.action.PUBLISH_RECOMMENDATION .. }

Vous devez enregistrer les broadcast receivers de manière dynamique.

class AppEngageBroadcastReceiver extends BroadcastReceiver {
// Trigger recommendation cluster publish when PUBLISH_RECOMMENDATION broadcast
// is received
}

public static void registerBroadcastReceivers(Context context) {

context = context.getApplicationContext();

// Register Recommendation Cluster Publish Intent
context.registerReceiver(new AppEngageBroadcastReceiver(),
                         new IntentFilter(com.google.android.engage.service.Intents.ACTION_PUBLISH_RECOMMENDATION,
                         com.google.android.engage.service.BroadcastReceiverPermissions.BROADCAST_REQUEST_DATA_PUBLISH_PERMISSION,
                         /*scheduler=*/null));
...

}

Questions fréquentes sur les workflows

Lors de l'intégration avec le SDK, vous pouvez rencontrer les erreurs suivantes :

Erreurs de validation au niveau de l'application, du cluster et de l'entité

Les récapitulatifs au niveau de l'application, du cluster et de l'entité affichent le nombre d'erreurs de validation. Ces erreurs correspondent à des champs obligatoires manquants ou à des valeurs non valides fournies. Les messages d'erreur s'affichent en rouge sous chaque champ concerné. Corrigez toutes les erreurs de validation et vérifiez l'exactitude avant de partager l'APK.

Les liens profonds sont associés au nom du package. L'outil adb est un bon moyen de tester les liens profonds.

adb shell am start -W -a android.intent.action.VIEW -d <DEEPLINK URI> <PACKAGE NAME>

Les liens profonds sont un excellent moyen de suivre l'attribution. Les URL des liens profonds qui redirigent les utilisateurs vers votre application peuvent être incluses avec d'autres paramètres de suivi. Exemple : "http://xx/deeplink?source_tag=engage".

Les développeurs peuvent ajouter leurs propres paramètres de suivi et fournir une attribution pour calculer l'impact.

Questions fréquentes sur Engage pour TV 2.0

Questions d'ordre général

Qu'est-ce qu'Engage ?

Engage va encore plus loin que la fonctionnalité "Reprendre la lecture". Il s'agit d'une amélioration significative qui permet aux spectateurs de reprendre facilement leurs contenus sur un plus grand nombre d'appareils. Imaginez que vous commencez un film sur votre Google TV et que vous le continuez sans effort sur votre téléphone pendant votre trajet : c'est tout le potentiel de la fonctionnalité S'abonner.

Ce nouveau système est conçu pour améliorer l'engagement et la fidélisation des spectateurs en offrant une expérience fluide et sans friction dans l'ensemble de l'écosystème Google.

L'API Video Discovery est-elle la même que Engage ?

Oui, ils sont identiques. Le SDK Engage est une bibliothèque qui inclut la prise en charge de la ligne "Reprendre la lecture". Engage est compatible avec plus de types d'entités de contenu que les vidéos, c'est pourquoi l'intégration ne s'appelle plus "Découverte vidéo".

Quels sont les avantages d'Engage ?

Réponse : Engage permet aux spectateurs de reprendre facilement la lecture de vos contenus là où ils l'ont laissée, quel que soit l'appareil qu'ils utilisent. Voici comment cela fonctionne :

  • Expérience fluide sur Google : commencez à regarder un contenu sur votre Google TV et continuez-le facilement sur votre téléphone Android, votre iPhone ou votre tablette Android. Il fonctionne même sur les appareils sur lesquels vous n'avez pas encore installé l'application.
  • Engagement et fidélisation accrus : Engage permet de ramener les utilisateurs dans votre application, même sur de nouveaux appareils. En leur permettant de reprendre leurs séries préférées, vous augmentez les chances qu'ils continuent à les regarder.
  • Couverture plus large : en plus de Google TV, Engage fonctionne sur d'autres expériences multimédias Android, comme les Collections Play et d'autres applications multimédias Google.
  • Rétrocompatibilité : si vous utilisez déjà l'ancienne fonctionnalité À suivre, pas de problème ! Engage est rétrocompatible. Votre intégration existante continuera donc de fonctionner.

Remarque importante : Toutes les nouvelles intégrations de la fonctionnalité Reprendre la lecture doivent utiliser Engage. L'ancien système "Ma sélection inter-appareils" est en cours d'abandon.

Quelles surfaces sont compatibles avec Engage ?

  1. Google TV
  2. Android TV (sur l'appareil uniquement, mais compatible avec le SDK Engage)
  3. Application mobile Google TV pour Android
  4. Application mobile Google TV pour iOS
  5. Collections Play
  6. Google Entertainment Space
  7. Appareils iOS (avec intégration de l'API REST)

Le SDK Engage est-il destiné à la fonctionnalité "Reprendre la lecture" ?

Oui, le SDK Engage est compatible avec le contenu de la ligne "Reprendre la lecture". Elle est obligatoire pour l'intégration à Engage.

Engage est-il disponible pour tous ?

Engage est déployé par phases.

  • Accès anticipé : nous accordons initialement l'accès à un groupe restreint de partenaires via un programme d'accès anticipé (PAA).
  • Élargissement de l'accès : nous mettons tout en œuvre pour rendre Engage disponible pour tous les développeurs prochainement.

Pour un lancement fluide et réussi, nous avons mis en place des mesures de protection pour gérer le déploiement. Cela implique à la fois une liste d'autorisation côté Engage et une vérification distincte dans le SDK Engage. Que vous soyez un partenaire du programme d'accès anticipé ou que vous souhaitiez bientôt le devenir, veuillez nous contacter afin que nous puissions configurer les autorisations d'accès avant que vous ne commenciez l'intégration du SDK Engage.

Les exigences concernant les images ont été mises à jour dans la section Créer des entités.

Avec cette nouvelle documentation de l'API, les données "Reprendre la lecture" extraites par le serveur Google du client seront-elles reflétées sur tous les appareils ?

Cette nouvelle API apporte des améliorations importantes pour le contenu de la ligne "Reprendre la lecture", y compris :

  • Expérience fluide sur les Google TV : les utilisateurs peuvent commencer à regarder un contenu sur une Google TV et le reprendre sur n'importe quelle autre Google TV connectée au même compte. Cette fonctionnalité est également compatible avec les anciennes versions d'Android TV.

  • Intégration de l'application mobile : le contenu d'Engage s'affiche dans l'application mobile Google TV pour Android et iOS, ce qui permet aux utilisateurs de passer facilement de leur téléviseur à leurs appareils mobiles.

  • Fidélisation des utilisateurs améliorée : même sur les appareils sur lesquels l'application n'est pas installée ou sur lesquels l'utilisateur n'est pas connecté, le contenu de la ligne "Reprendre la lecture" encourage les utilisateurs à réutiliser votre application, ce qui améliore la fidélisation.

  • Extension à d'autres plates-formes : Engage s'étend à d'autres plates-formes média Google telles qu'Android, les collections Play, les tablettes et d'autres applications et surfaces média Google sur Android, ce qui maximise l'engagement des utilisateurs sur tous les appareils.

Quel est le nombre maximal d'entités que je peux publier dans le cluster "Continuation" ?

Chaque développeur partenaire est limité à un maximum de cinq entités dans le cluster "Suite". Cette limite permet de distribuer équitablement les contenus dans la ligne "Reprendre la lecture" sur Google TV, qui est un espace partagé pour plusieurs fournisseurs de contenus multimédias.

Que se passe-t-il si j'essaie de publier plus de cinq entités ?

Le SDK Engage rejettera votre demande de publication si elle dépasse la limite de cinq entités. Pour publier votre demande, vous devez réduire le nombre d'entités. Vous ne devez inclure que les entités que les utilisateurs ont commencé à regarder, mais pas terminées. Dans la plupart des cas, il n'y en aura que quelques-unes. S'il y en a plus de cinq, vous pouvez choisir de publier les plus récentes.

Pourquoi le nombre d'entités est-il limité ?

La ligne "Reprendre la lecture" sur Google TV affiche des contenus provenant de différents fournisseurs de contenus multimédias. Le nombre d'entités par fournisseur est limité afin que les utilisateurs voient une sélection variée de contenus provenant de toutes leurs sources préférées, ce qui favorise une expérience utilisateur équitable et équilibrée.

Questions sur l'application de validation

Dois-je obligatoirement tester mon application avec l'application de validation avant de l'envoyer ?

Oui, il est essentiel de tester votre application avec l'application de validation avant d'envoyer votre APK.

Nous comprenons que vous puissiez avoir confiance en votre implémentation, mais l'intégration d'Engage comporte de nombreux composants complexes. L'application de validation sert de filet de sécurité, en détectant les problèmes potentiels dès le début et en vous faisant gagner du temps et des efforts à long terme.

Considérez-le comme un examen rapide qui vous aidera à garantir un lancement fluide et une expérience utilisateur optimale.

En identifiant et en résolvant les problèmes à l'avance, vous pouvez éviter la frustration liée aux refus et aux renvois.

Pour envoyer votre fichier APK, vous devez inclure une capture d'écran montrant que votre application a réussi le processus de validation.

Quelles sont les erreurs courantes à éviter lors de l'intégration ?

L'application de validation est conçue pour détecter les problèmes potentiels liés à votre intégration Engage. Voici quelques erreurs courantes que les développeurs rencontrent souvent :

Pour tous les types de contenus (films, épisodes de série, diffusions en direct, extraits vidéo) :

  • Liens manquants : assurez-vous de fournir des URI (liens) valides spécifiques à la plate-forme pour votre contenu. Ces liens indiquent au système où trouver votre contenu sur chaque plate-forme.
  • Titres manquants : n'oubliez pas d'inclure des titres pour tous vos contenus. Cela permet aux utilisateurs d'identifier ce qu'ils regardaient.
  • Proportions des images : vérifiez que toutes les images associées à votre contenu ont des proportions proches de 16:9. Cela permet de s'assurer que vos images s'affichent correctement sur différents écrans.

Pour les épisodes de séries TV :

  • Informations complètes sur l'épisode : veillez à inclure le titre de la série, le numéro de l'épisode et le numéro de la saison. Cela permet d'organiser les épisodes et aux utilisateurs de naviguer dans une série.
  • Position de lecture précise : vérifiez que la dernière position de lecture est inférieure ou égale à la durée totale de l'épisode. Cela permet aux utilisateurs de reprendre la lecture au bon endroit.

Pour les films :

  • Position de lecture précise : comme pour les épisodes TV, vérifiez que la dernière position de lecture est précise.

Pour les vidéos diffusées en direct :

  • Informations sur le diffuseur : incluez le nom du diffuseur pour les diffusions en direct.

Pour les clips vidéo :

  • Informations sur le créateur : indiquez le créateur de l'extrait vidéo.

N'oubliez pas que l'application de validation signalera ces problèmes, ce qui vous permettra de les résoudre avant d'envoyer votre application. Vous gagnerez ainsi du temps et offrirez une expérience plus fluide à vos utilisateurs.

Questions sur le compte et le profil

Mon application utilise des identifiants de connexion anonymes. AccountProfile est-il toujours requis pour Engage ?

AccountProfile est conçu pour les applications qui utilisent des comptes utilisateur individuels. Toutefois, nous comprenons que certaines applications, comme la vôtre, peuvent s'appuyer sur des identifiants anonymes. Voici comment Engage fonctionne dans ce scénario :

  • AccountProfile est techniquement requis, mais vous pouvez toujours intégrer Engage même si votre application ne dispose pas d'un système de compte utilisateur.
  • Utilisation limitée à l'appareil : les fonctionnalités multi-appareils d'Engage reposent sur l'identification des utilisateurs sur différents appareils. Étant donné que les connexions anonymes ne le permettent pas, la fonctionnalité sera limitée à l'appareil actuel de l'utilisateur.
  • Pour configurer cette fonctionnalité, vous devez désactiver la synchronisation inter-appareil. Cela permet de s'assurer que les entrées de continuation n'apparaissent que sur l'appareil spécifique sur lequel le contenu a été lancé.

En résumé : bien que vous puissiez intégrer Engage avec des connexions anonymes, les utilisateurs ne pourront reprendre le contenu que sur le même appareil.

Puis-je utiliser AccountProfile avec uniquement accountId et sans profileId, même si mon application est compatible avec accountId et profileId ?

AccountProfile nécessite accountId et profileId pour fonctionner correctement. Voici pourquoi :

  • Identification cohérente : accountId identifie l'utilisateur, tandis que profileId fait la distinction entre les différents profils du compte de cet utilisateur (le cas échéant). En fournissant les deux, vous vous assurez qu'Engage suit et affiche correctement le contenu pour chaque profil individuel.
  • Éviter les erreurs : l'utilisation incohérente de accountId et profileId dans différents appels d'API peut entraîner des erreurs et un comportement inattendu. Par exemple, si vous incluez les deux lors de l'ajout de contenu à Engage, mais que vous n'utilisez que accountId lors de la suppression de contenu, il est possible que le système ne puisse pas identifier et supprimer correctement les éléments souhaités.

profileId est-il obligatoire pour Engage ?

  • Le champ "accountId" est obligatoire. Cela permet d'identifier l'utilisateur sur tous les appareils.
  • profileId est essentiel pour une bonne expérience utilisateur. Bien que techniquement facultatif, profileId est fortement recommandé si votre service prend en charge plusieurs profils (comme de nombreux services de streaming). Pourquoi est-ce si important ? En effet, sans profileId, la ligne "Reprendre la lecture" peut afficher du contenu provenant d'autres profils du même compte. Cela peut entraîner une expérience déroutante et frustrante pour vos utilisateurs.
  • En bref : fournir profileId permet de s'assurer que le contenu proposé dans la ligne "Reprendre la lecture" reflète fidèlement l'historique des vidéos regardées de chaque utilisateur. Vous devez fournir un profil, sauf si votre application n'est pas compatible avec ce concept dans un compte.

Comment Google utilise-t-il profileId de son côté ?

Si le service propose différents profils pour regarder du contenu, accountId et profileId seront utilisés pour associer le contenu regardé sur l'appareil au compte Google connecté à l'appareil. Google enregistrera les données "Reprendre la lecture" en fonction de la combinaison de accountId et profileId. Tout appareil Google sur lequel le même compte Google est connecté recevra les dernières données mises à jour de la même combinaison accountId et profileId dans sa ligne "Reprendre la lecture".

L'association de compte est-elle requise pour implémenter Engage ?

L'association de comptes n'est pas nécessaire. Elle est moins prioritaire et tous les cas d'utilisation associés seront couverts par la nouvelle API Device Entitlements.

Questions sur la synchronisation entre les appareils

Avec le consentement de l'utilisateur pour la synchronisation sur plusieurs appareils, le contenu qu'il regarde sera enregistré sur les serveurs Google TV, ce qui lui permettra de reprendre facilement là où il s'était arrêté sur n'importe quel appareil connecté à votre compte. Sans consentement, l'historique des vidéos regardées reste local à l'appareil actuel.

Pouvons-nous définir "sync across devices" (synchroniser sur tous les appareils) sur "false" (faux) ?

L'indicateur setUserConsentToSyncAcrossDevices contrôle si les données ContinuationCluster d'un utilisateur sont synchronisées sur ses appareils (téléviseur, téléphone, tablette, etc.). Si cet indicateur est défini sur "false", le contenu "Reprendre la lecture" n'est affiché que sur le même appareil.

Pour profiter pleinement de notre fonctionnalité multi-appareils, nous vous conseillons vivement d'obtenir le consentement utilisateur et de définir SyncAcrossDevices sur "true" dans votre application.

de ses appareils mobiles ? Quels points de données sont partagés avec les serveurs tiers à partir d'appareils autres qu'Android ?

Le consentement est recueilli au niveau de l'utilisateur (au niveau du profil ou du compte). Une fois le consentement obtenu, les charges utiles "Continuer à regarder" basées sur l'engagement peuvent être envoyées n'importe où afin que Google puisse refléter l'état de reprise de l'ubiquité des utilisateurs sur toutes les entités avec lesquelles ils ont un engagement partiel ou suivant, sur n'importe quel appareil (sans avoir à redemander le consentement sur chaque appareil ou plate-forme). Les partenaires enverront le dernier état de lecture en cours des utilisateurs (conformément aux spécifications) associé à l'ID de profil (déposé sur Android).

Questions sur l'API REST

Existe-t-il une documentation sur l'API REST ?

La date prévue pour l'API REST est mars 2025. Cette information est indiquée dans la documentation pour les développeurs d'Engage.

Anciennes questions "Ma sélection"

Engage remplace-t-il l'API Watch Next ?

Engage sera rétrocompatible sur tous les appareils Android TV compatibles avec l'API Watch Next. Pour l'intégrer à Google TV et à d'autres surfaces compatibles avec Engage, les développeurs doivent utiliser le SDK Engage.

Questions sur les tests et l'intégration

Quelle est la différence entre LastPlayBackPositionTimeMillis et la durée ?

LastPlayBackPositionTimeMillis doit refléter la durée de lecture en millisecondes à laquelle l'utilisateur a arrêté de regarder le contenu (par exemple, 605 000 ms pour 10 minutes et 5 secondes). Elle ne doit jamais être supérieure à la durée totale de l'entité.

LastEngagementTime correspond à l'horodatage de la dernière interaction de l'utilisateur avec le contenu.

Quels sont les scénarios de test à effectuer ?

Vous trouverez ci-dessous des scénarios de test pour Google TV que notre équipe QA effectue. Des cas de test similaires peuvent également être effectués sur d'autres surfaces.

  1. Regardez une vidéo de plus de 20 minutes pendant environ 5 minutes. Quittez l'application. La carte vidéo devrait s'afficher dans la ligne "Reprendre la lecture". Remarque : Dans CW, nous n'affichons que cinq cartes par application tierce.
  2. Si vous sélectionnez la nouvelle fiche qui s'affiche dans la ligne "Reprendre la lecture", la lecture de la vidéo devrait reprendre au bon endroit. Remarque : La lecture de tout contenu nouveau ou ancien devrait reprendre là où elle s'était arrêtée.
  3. Lorsque vous changez de compte sur l'appareil GTV, les cartes de la ligne "Reprendre la lecture" doivent changer. Seules les vidéos du compte actuel doivent s'afficher, triées par ordre chronologique. Le profil de l'application tierce "Reprendre la lecture" sera mélangé. Remarque : La ligne "Reprendre la lecture" de GoogleAccount2 affichera les contenus tiers que GoogleAccount2 a regardés.
  4. Quittez l'application à l'aide du bouton RETOUR > Vérifiez que la carte s'affiche dans la ligne "Reprendre la lecture".
  5. Masquez la vidéo dans la ligne "Continuer à regarder". Elle ne devrait plus s'afficher. Vérifiez si le contenu masqué reste masqué au-delà de 24 heures et même après l'ouverture de l'application après 24 heures. Vérifiez que le masquage d'un élément n'entraîne pas le masquage de plusieurs éléments.
  6. Disponibilité du contenu dans la ligne "Reprendre la lecture" avec les métadonnées complètes : image de la fiche, nom de l'application, titre, numéro de la saison et de l'épisode pour les contenus TV
  7. L'option "Vérifier la progression" s'affiche dans la barre de progression.
  8. L'utilisateur a regardé le contenu jusqu'à la fin du générique, mais le contenu ne s'affiche pas dans la ligne "Reprendre la lecture".
  9. Vérifiez qu'aucun élément non regardé ne s'affiche dans la ligne "Continuer à regarder".
  10. Vérifiez que les éléments de la section "Avertissement de contenu" sont classés par ordre chronologique en fonction de la date de l'activité de la montre, et non de la date de la dernière ouverture de l'application ou du dernier jour.
  11. Vérifiez que les informations sur l'épisode et la saison figurant sur la fiche CW correspondent à ce qui a été regardé dans le contenu épisodique.
  12. Les éléments marqués comme terminés (avec des crédits ou plus) ne s'affichent pas dans la ligne "Reprendre la lecture"
  13. Éteignez l'appareil à mi-parcours de l'épisode/du film/de la série. "Éteignez l'appareil à mi-parcours de l'épisode/du film/de la série. Vérifiez que, lorsque vous rallumez l'appareil et sur une autre TV, la bonne fiche s'affiche, à la bonne position et avec la bonne barre de progression."
  14. Éteignez l'appareil après avoir regardé l'épisode 1 en entier, puis vérifiez
  15. L'épisode 1 disparaît de la ligne "Continuer à regarder" [sur le deuxième appareil et lorsque l'appareil de test est allumé]
    1. L'épisode 2 (le cas échéant) doit s'afficher dans la ligne "Continuer à regarder" [sur le deuxième appareil et lorsque l'appareil de test est allumé].
  16. Premier scénario : TV1 : compte Google : maman, compte / profil tiers : compte 1/profil 1. Regardez du contenu et vérifiez que les données de couverture et fréquence affichent les contenus regardés par le compte 1/profil 1 tiers.
  17. TV2: GoogleAccount: mom. Vérifiez les données de couverture et de fréquence du premier scénario. Connectez-vous maintenant à l'application tierce avec un autre compte. Compte / profil tiers : account_2/profile_2. Regarder du contenu et vérifier que les données CW affichent les contenus regardés par le compte tiers 2/profil 2

  18. GoogleAccount: mom. La nouvelle coque de l'appareil ou l'application tierce ne sont pas installées. Sur un nouvel appareil(FDR l'appareil), Verify CW affiche les données de la dernière application tierce utilisée par le compte Google. Remarque : La ligne CW ne doit pas afficher de contenu tiers si le compte GAIA n'est pas encore associé à un profil tiers sur un autre appareil.

    1. GoogleAccount: mom. Nouvelle coque /application tierce installée, mais non connectée. Sur un nouvel appareil(après une réinitialisation des données d'usine), l'outil Vérifier CW affiche les données de la dernière application tierce utilisée par le compte Google.
    1. Remarque : La ligne "Reprendre la lecture" ne doit pas afficher de contenus tiers si le compte Google n'est pas encore associé à un profil tiers.

Nous ne voyons pas de contenus de la section "Reprendre la lecture" dans l'application Google TV pour iOS. Pourquoi ?

Vous devrez envoyer des liens profonds iOS pour que le contenu s'affiche dans la ligne "Reprendre la lecture" sur les appareils iOS.

À quelle fréquence dois-je mettre à jour les informations sur le contenu de la ligne "Reprendre la lecture" ? Dois-je le mettre à jour fréquemment, par exemple toutes les 15 secondes ?

Non, les mises à jour fréquentes ne sont pas recommandées. Voici pourquoi :

  • Impact sur les performances : l'envoi continu de mises à jour exerce une pression inutile sur nos serveurs, ce qui peut ralentir le système pour tout le monde.
  • Données inutiles : lorsque l'utilisateur regarde activement une vidéo, sa position de lecture change constamment. L'envoi de mises à jour toutes les quelques secondes crée une grande quantité de données redondantes qui ne sont pas utiles pour reprendre la lecture.

Quand mettre à jour les informations sur le contenu de la ligne "Reprendre la lecture" :

Concentrez-vous sur la capture des changements significatifs dans la progression de visionnage de l'utilisateur. Voici les principaux scénarios :

  • Lecture mise en pause ou arrêtée : lorsqu'un utilisateur met en pause ou arrête la lecture, envoyez une mise à jour pour enregistrer sa position actuelle.
  • Application fermée ou mise en arrière-plan : si un utilisateur quitte l'application ou passe à une autre application pendant qu'il regarde une vidéo, envoyez une mise à jour pour enregistrer sa progression.
  • Lorsqu'un utilisateur supprime un élément de la ligne "Reprendre la lecture" dans l'application

Comment mettre à jour efficacement :

Au lieu d'utiliser des mises à jour programmées, utilisez des événements dans le lecteur vidéo ou le cycle de vie de l'application pour déclencher les mises à jour. Exemple :

  • onPause, onStop : lorsque la lecture de la vidéo est mise en pause ou arrêtée.
  • onAppClose, onAppBackgrounded : lorsque l'application se ferme ou passe en arrière-plan.

En suivant ces consignes, vous utiliserez efficacement les ressources tout en offrant une expérience fluide à vos utilisateurs dans la ligne "Reprendre la lecture".