Identifier les liens profonds spécifiques à la plate-forme présents dans votre contenu

Lorsqu'un utilisateur lance des actions multimédias sur un contenu (par exemple, qu'il clique sur votre icône dans la recherche Google), Google le redirige directement vers le contenu de votre application ou plate-forme à l'aide du lien profond du contenu.

Voici les conditions requises pour les liens profonds:

  • urlTemplate (d'un objet cible) nécessite un lien profond.
  • Les liens profonds doivent ouvrir le contenu qu'ils ciblent sur toutes les plates-formes spécifiées.
  • Les liens profonds peuvent inclure des paramètres (&) ou des balises d'ancrage (#).
    • Si la lecture automatique n'est pas activée par défaut, nous vous recommandons d'ajouter un paramètre, tel que &autoplay=true, au lien profond pour activer la fonctionnalité de lecture automatique sur votre application ou votre plate-forme.

Exemple de @id, url et urlTemplate :

{
   "@context": ["http://schema.org", {"@language": "en"}],
   "@type": "Movie",
   "@id": "http://www.example.com/my_favorite_movie",
   "url": "http://www.example.com/my_favorite_movie",
   "name": "My Favorite Movie",
   "potentialAction": {
     "@type": "WatchAction",
     "target": {
       "@type": "EntryPoint",
       "urlTemplate": "http://www.example.com/my_favorite_movie&autoplay=true",
       ...
     },
   ...
   },
   ...
}

Le pseudocode suivant représente le comportement souhaité lorsqu'un utilisateur lance la lecture:

if your app is installed
  open app and initiate playback
elseif your website supports playback
  open your website and initiate playback
else
  take user to your app's install page on the Play or App store and then
  initiate playback after your app is installed

Pour obtenir le comportement de lecture souhaité, respectez les exigences spécifiques à la plate-forme suivantes:

iOS
Vous devez utiliser des liens universels.
Android et Android TV
Vous pouvez utiliser des liens vers l'application Android ou des liens vers un schéma personnalisé.

Sur Android et Android TV, vous pouvez également utiliser des liens de schéma personnalisés. L'package_id de votre application doit être inclus dans l'URI du schéma personnalisé. Cela garantit que l'utilisateur est redirigé vers la page de votre application sur le Play Store si celle-ci n'est pas installée. Par conséquent, les formats d'URI suivants sont les seuls formats de schéma personnalisé acceptables pour les actions multimédias:

android-app://{package_id}/{scheme}/{path}

Exemple :

android-app://com.partner.mynetworkapp/mynetwork/play?series=20114&title=21141&media=e90c89fa4

Pour en savoir plus, consultez la spécification complète.

intent://{package_id}/{scheme}/{path}

Exemple :

intent://com.partner.mynetworkapp/mynetwork/play?series=20114&title=21141&media=e90c89fa4

Les autres formats d'URI, comme l'exemple suivant, ne sont pas des liens de schéma personnalisé acceptables pour les actions multimédias:

scheme://{path}

Exemple :

mynetwork://play?series=20114&title=21141&media=e90c89fa4

Bonnes pratiques

Si votre application n'est pas installée et que vous ne disposez pas d'un lecteur Web, configurez votre serveur Web pour rediriger automatiquement l'utilisateur vers l'Android Store ou l'App Store afin qu'il puisse l'installer. Pour la redirection, utilisez des liens dynamiques Firebase ou des plates-formes de liens intelligents tiers.

Si votre application n'est pas installée et que vous disposez d'un lecteur Web, fournissez un lien ou une bannière intelligente vers l'Android Store ou l'App Store pour que les utilisateurs puissent installer votre application. Vous trouverez ci-dessous un exemple de bannière intelligente implémentée:

Exemple de bannière intelligente implémentée

Le tableau suivant présente les exigences et les limites concernant les liens profonds, telles qu'elles s'appliquent à iOS, Android et Android TV:

iOS Android et Android TV
http:// ou https:// Obligatoire Recommandé si le site Web mobile est compatible avec la lecture.
android-app:// ou intent:// N/A Recommandé si le site Web mobile n'est pas compatible avec la lecture.
foo:// (chaîne arbitraire) Non autorisé Non autorisé

Types de plates-formes

Pour vous assurer que vos contenus sont disponibles sur les différentes plates-formes de Google (Recherche, Assistant, Android TV et Chromecast), respectez les exigences suivantes:

Le tableau suivant contient la liste des plates-formes compatibles avec les actions multimédias:

Plate-forme Description
http://schema.org/DesktopWebPlatform Plate-forme de recherche dans un navigateur Web pour ordinateur
http://schema.org/MobileWebPlatform Plate-forme de recherche dans un navigateur Web mobile.
http://schema.org/AndroidPlatform Plates-formes Search et PlayGuide dans l'application Android.
http://schema.org/AndroidTVPlatform Plate-forme Android TV dans l'application Android TV.
http://schema.org/IOSPlatform Plate-forme de recherche dans l'application iOS.
http://schema.googleapis.com/GoogleVideoCast Plates-formes Cast et Home sur un appareil Chromecast
http://schema.googleapis.com/GoogleAudioCast Actions liées à l'écoute uniquement Plates-formes Cast et Home sur un appareil Chromecast

Exemple d'entité avec deux liens profonds différents:

"potentialAction": {
  "@type": "WatchAction",
  "target": [
    {
      "@type": "EntryPoint",
      "urlTemplate": "http://www.example.com/standardView",
      "actionPlatform": [
        "http://schema.org/DesktopWebPlatform",
        "http://schema.org/MobileWebPlatform"
      ]
    },
    {
      "@type":"EntryPoint",
      "urlTemplate":"http://example.com/multipleViews",
      "actionPlatform": [
        "http://schema.org/IOSPlatform",
        "http://schema.org/AndroidPlatform",
        "http://schema.org/AndroidTVPlatform",
        "http://schema.googleapis.com/GoogleVideoCast"
      ],
      "additionalProperty": [
        {
          "@type": "PropertyValue",
          "name": "videoFormat",
          "value": [ "HD", "4K" ]
        }
      ],
    }
  ],
  ...
}

Comportement de lecture

Pour la plupart des contenus, lorsque Google redirige les utilisateurs vers votre application ou votre plate-forme, nous vous demandons de lancer automatiquement le contenu sélectionné. Les utilisateurs peuvent ainsi commencer à regarder ou à écouter le contenu rapidement.

Comportement de lecture des actions de visionnage

Pour les actions de visionnage, nous exigeons le comportement de lecture suivant.

Tous les liens profonds : "Movie", "TVEpisode", "TVSeries" et "TVSeason"

  • Comportement de connexion ou d'achat:si votre service nécessite une connexion ou un achat, le film ou l'épisode doit être diffusé, selon le type, par la suite. Pour en savoir plus, consultez les consignes concernant les liens profonds ci-dessous.

  • Lecture:si votre service suit l'état d'un utilisateur, la lecture doit commencer à partir du repère précédent de l'utilisateur sur le film ou l'épisode. Sinon, la lecture doit commencer au début du contenu.

  • Lecture automatique:selon la plate-forme, votre service doit diffuser le contenu de manière bien visible une fois que l'utilisateur a sélectionné l'épisode ou le film cible.

    • Recherche:la lecture automatique est vivement recommandée, mais pas obligatoire. Si la lecture automatique n'est pas prise en charge, le contenu doit être lu en un clic après que l'utilisateur a été redirigé vers votre application ou votre service.
    • Android TV:la lecture automatique est obligatoire pour les films et les épisodes.

Liens profonds TVSeries et TVSeason uniquement

  • Sélection de l'épisode cible:vous devez sélectionner l'épisode cible approprié. Si votre service suit l'état d'un utilisateur, l'épisode cible doit être celui que l'utilisateur a arrêté de regarder pour la dernière fois. Si l'utilisateur a regardé l'épisode qu'il regardait en dernier dans son intégralité, définissez l'épisode cible sur l'épisode suivant. Dans le cas contraire, l'épisode cible doit correspondre à l'un des éléments suivants, à votre discrétion:

    • TVSeries
      • Premier épisode de la série. Recommandé pour les séries.
      • Premier épisode de la dernière saison. Recommandé pour les séries longues.
      • Dernier épisode Recommandé pour les émissions quotidiennes ou d'actualité.
    • TVSeason
      • Premier épisode de la saison. Recommandé pour les séries.
      • Dernier épisode Recommandé pour les émissions quotidiennes ou d'actualité.

    Un lien profond pour TVSeries ou TVSeason doit être statique (ne pas changer) et renvoyer vers l'épisode cible. N'utilisez pas le lien profond pour un épisode spécifique.

    Le tableau suivant fournit plusieurs exemples illustrant la logique de sélection d'épisodes cibles requise pour les types d'entités TVSeries, TVSeason et TVEpisode:

    Épisode cible si l'utilisateur a regardé l'épisode 24 de la saison 6 en dernier Épisode cible si l'utilisateur n'a regardé aucun épisode
    Lien profond vers la série
    • S6E24 (si l'utilisateur n'a pas terminé S6E24)
    • S6E25 (si l'utilisateur a terminé de regarder S6E24)

    Choisissez l'une des options suivantes :

    • Premier épisode de la série
    • Premier épisode de la dernière saison
    • Dernier épisode
    Lien profond vers la saison (S1 à S5)
    • Épisode que l'utilisateur a regardé en dernier dans cette saison ou premier épisode de la saison si l'utilisateur n'a regardé aucun épisode de cette saison.
    • Premier épisode de la saison
    Lien profond de la saison (S6)
    • S6E24 (si l'utilisateur n'a pas terminé S6E24)
    • S6E25 (si l'utilisateur a terminé de regarder S6E24)

    Choisissez l'une des options suivantes :

    • Premier épisode de la saison
    • Dernier épisode
    Lien profond vers un épisode
    • Épisode spécifique sur lequel l'utilisateur a cliqué.
    • Épisode spécifique sur lequel l'utilisateur a cliqué.

Comportement de lecture des actions d'écoute

Pour les actions d'écoute, nous exigeons le comportement de lecture suivant:

  • Le contenu doit être lu en un clic après que l'utilisateur a été redirigé vers votre application ou votre service.
  • Si votre application ou votre plate-forme nécessite une connexion, elle doit lire le contenu immédiatement ou en un clic après la connexion.
  • Votre application ou plate-forme doit proposer au moins une méthode permettant à tous les utilisateurs de lire le titre, l'album, l'artiste ou la playlist exacts.
    • Pour les utilisateurs qui ne peuvent pas lire le contenu exact (par exemple, s'ils ne disposent pas de l'abonnement requis), votre service doit expliquer ce qu'ils doivent faire pour pouvoir lire le contenu exact lorsqu'ils accèdent à votre application ou plate-forme.

Nous vous recommandons de respecter les bonnes pratiques suivantes pour votre application ou votre plate-forme:

  • Pour MusicGroup, diffusez un contenu différent de l'artiste chaque fois qu'un utilisateur le sélectionne.
  • Pour MusicAlbum, lisez le contenu dans l'ordre d'apparition dans l'album.
  • Pour MusicPlaylist, lisez un contenu différent de la playlist chaque fois qu'un utilisateur la sélectionne.

Procédez comme suit :

  1. Pour chaque contenu, vérifiez s'il comporte des liens profonds différents en fonction des plates-formes.
  2. Pour chaque lien profond, posez les questions suivantes sur son point d'entrée (la page de votre application ou de votre plate-forme vers laquelle le lien profond vous redirige) :
    • Le point d'entrée (et non le contenu) est-il compatible avec plusieurs langues ?
    • Le point d'entrée accepte-t-il plusieurs langues de sous-titres ?
    • Le point d'entrée est-il compatible avec plusieurs angles de vue ?
    • Le point d'entrée est-il compatible avec plusieurs formats vidéo ?

Si vous répondez "oui" à l'une de ces questions, vous devez fournir la propriété additionalProperty pour ce lien profond. Consultez l'exemple additionalProperty.