Lorsqu'un utilisateur lance des actions multimédias sur du contenu (par exemple, s'il clique sur votre icône dans la recherche Google), Google le redirige directement vers le contenu de votre application ou de votre plate-forme à l'aide du lien profond du contenu.
Lien profond
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.
- Si la lecture automatique n'est pas activée par défaut, nous vous recommandons d'ajouter un paramètre, tel que
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",
...
},
...
},
...
}
Utiliser des liens profonds pour lancer la lecture
Le pseudo-code suivant représente le comportement souhaité lorsqu'un utilisateur lance 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 propres à chaque plate-forme:
- iOS
- Vous devez utiliser des liens universels.
- Android et Android TV
- Vous pouvez utiliser Android App Links ou des liens schémas personnalisés.
Liens avec schémas personnalisés pour Android et Android TV
Sur Android et Android TV, vous pouvez également utiliser des liens de schémas personnalisés. Votre application
package_id
doit être inclus dans l'URI du schéma personnalisé. Cela permet de s'assurer
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émas personnalisés acceptés
pour Media Actions:
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 ci-dessous, ne sont pas des formats personnalisés Liens vers les schémas pour Media Actions:
scheme://{path}
-
Exemple :
mynetwork://play?series=20114&title=21141&media=e90c89fa4
Bonnes pratiques
Si votre application n'est pas installée et que vous n'avez pas de lecteur Web, configurer votre serveur Web pour rediriger automatiquement l'utilisateur vers le Android ou App Store pour installer votre application. Pour rediriger, utilisez les liens dynamiques Firebase. ou des plates-formes Smart Links tierces.
Si votre application n'est pas installée et que vous disposez bien d'un lecteur Web, fournir un lien ou une bannière intelligente vers l'Android ou l'App Store afin que les utilisateurs installer votre application. Voici un exemple de bannière intelligente implémentée:
Résumé des exigences et des limites concernant les liens profonds
Le tableau suivant présente les exigences et les limites applicables aux liens profonds, car ils concernant iOS, Android et AndroidTV:
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 votre contenu est disponible sur les différentes plates-formes de Google (Recherche, Assistant, Android TV et Chromecast), vous devez respecter les exigences suivantes:
- Toutes les plates-formes compatibles avec les partenaires nécessitent un lien profond pour votre contenu.
- Pour les plates-formes Chromecast, vous devez créer un récepteur à l'aide du dernier SDK CAF (Cast Application Framework) récepteur.
- Pour les plates-formes mobiles (Android et iOS), consultez les conditions requises dans la section Utiliser des liens profonds pour lancer la lecture.
Le tableau suivant contient la liste des plates-formes compatibles avec Media Actions:
Plate-forme | Description |
---|---|
http://schema.org/DesktopWebPlatform
|
Plate-forme de recherche sur un navigateur Web pour ordinateur. |
http://schema.org/MobileWebPlatform
|
Plate-forme de recherche sur navigateur Web mobile. |
http://schema.org/AndroidPlatform
|
Plates-formes Recherche et PlayGuide sur l'application Android. |
http://schema.org/AndroidTVPlatform
|
Plate-forme Android TV sur l'application Android TV. |
http://schema.org/IOSPlatform
|
Plate-forme de recherche sur l'application iOS. |
http://schema.googleapis.com/GoogleVideoCast
|
les plates-formes Cast et Home sur un appareil Chromecast ; |
http://schema.googleapis.com/GoogleAudioCast
|
Actions d'écoute uniquement : les 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 exigeons pour lancer la lecture automatique du contenu sélectionné. Cela permet aux utilisateurs de démarrer rapidement lorsqu'ils regardent ou écoutent le contenu.
Comportement de lecture des actions de visionnage
Pour les actions de visionnage, vous devez respecter le comportement de lecture suivant.
Tous les liens profonds : "Movie", "TVEpisode", "TVSeries" et "TVSeason"
Connexion ou achat:si le service nécessite une connexion ou achat, la lecture du film ou de l'épisode doit être adaptée à sa puis le modifier. Pour en savoir plus, consultez les consignes relatives aux liens profonds suivre.
Lecture:si votre service suit l'état d'un utilisateur, la lecture doit commencer le repère précédent de l'utilisateur sur le film ou l'épisode. Sinon, la lecture doit de commencer par le début du contenu.
Lecture automatique:selon la plate-forme, votre service doit lire le contenu de manière visible une fois que l'utilisateur a sélectionné l'épisode ou le film cible.
- Recherche:la lecture automatique est vivement recommandée, mais elle n'est pas obligatoire. Si la lecture automatique n'est pas disponible, le contenu doit être lu en un clic après que l'utilisateur a été redirigé vers votre application ou service.
- Android TV:la lecture automatique est requise pour les films et les épisodes.
Liens profonds uniquement pour les séries TV et saisons
Sélection de l'épisode cible:vous devez sélectionner l'épisode cible approprié. Si si votre service suit l'état d'un utilisateur, l'épisode cible doit être l'épisode ; que l'utilisateur a arrêté de regarder. Ou, si l'utilisateur a complètement terminé dernier épisode regardé, choisissez l'épisode cible . Sinon, l'épisode cible doit être l'un des suivants : à votre discrétion:
TVSeries
- Premier épisode de la série. Recommandé pour les émissions sérialisées.
- Premier épisode de la dernière saison. Recommandé pour sérialisées de longue durée.
- Le dernier épisode. Recommandé pour les émissions du jour ou liées à l'actualité.
TVSeason
- Premier épisode de la saison. Recommandé pour les émissions sérialisées.
- Le dernier épisode. Recommandé pour les émissions du jour ou liées à l'actualité.
Un lien profond pour
TVSeries
ouTVSeason
doit être statique (sans modification) et résoudre le problème vers l'épisode cible. N'utilisez pas le lien profond un épisode spécifique.Le tableau suivant fournit plusieurs exemples illustrant les exigences logique de sélection de l'épisode cible pour
TVSeries
,TVSeason
et Types d'entitésTVEpisode
:Épisode cible si l'utilisateur a regardé S6E24 pour la dernière fois Cibler l'épisode si l'utilisateur n'a regardé aucun épisode Lien profond de la série - S6E24 (si l'utilisateur n'a pas terminé S6E24)
- S6E25 (si l'utilisateur a fini 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 de saison (S1-S5) - Le dernier épisode regardé par l'utilisateur au cours de la saison, ou la le premier épisode de la saison si l'utilisateur n'en a regardé d'épisodes de cette saison.
- Premier épisode de la saison
Lien profond de saison (S6) - S6E24 (si l'utilisateur n'a pas terminé S6E24)
- S6E25 (si l'utilisateur a fini de regarder S6E24)
Choisissez l'une des options suivantes :
- Premier épisode de la saison
- Dernier épisode
Lien profond vers l'é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, vous devez respecter le comportement de lecture suivant:
- Une fois que l'utilisateur est redirigé vers votre application ou service, le contenu doit être lu en un clic.
- Si votre application ou votre plate-forme nécessite une connexion, le contenu doit être lu immédiatement ou en un clic après la connexion.
- Votre application ou votre 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 que l'utilisateur doit faire pour pouvoir lire le contenu exact lorsqu'il accède à votre application ou à votre plate-forme.
Nous vous recommandons de suivre les bonnes pratiques suivantes pour votre application ou votre plate-forme:
- Pour
MusicGroup
, lire des contenus différents de l'artiste chaque fois qu'un utilisateur sélectionne l'artiste. - Pour
MusicAlbum
, lire le contenu dans l'ordre d'apparition dans l'album. - Pour
MusicPlaylist
, lire un contenu différent de la playlist chaque fois qu'un utilisateur la sélectionne.
Identifier les liens profonds
Procédez comme suit :
- Vérifiez si chaque contenu comporte des liens profonds différents selon les plates-formes.
- 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 disponible dans plusieurs langues ?
- Le point d'entrée est-il compatible avec plusieurs langues de sous-titres ?
- Le point d'entrée est-il compatible avec plusieurs angles de caméra ?
- 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.