找出內容的平台專屬深層連結

當使用者對內容啟動媒體動作 (例如在 Google 搜尋中按一下您的圖示),Google 會使用內容的深層連結,直接將使用者帶往應用程式或平台中的內容。

以下是深層連結的要求:

  • urlTemplate (目標物件) 需要深層連結。
  • 深層連結必須在指定的所有平台上開啟指定的內容。
  • 深層連結可包含參數 (&) 或錨點標記 (#)。
    • 如果預設未啟用自動播放功能,建議您在深層連結中附加參數 (例如 &autoplay=true),以便在應用程式或平台上啟用自動播放功能。

@idurlurlTemplate 的範例:

{
   "@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",
       ...
     },
   ...
   },
   ...
}

以下是使用者啟動播放時的預期行為,以虛擬程式碼表示:

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

如要達到所需的播放行為,請遵守下列平台專屬規定:

iOS
必須使用通用連結
Android 和 Android TV
您可以使用 Android 應用程式連結自訂配置連結

在 Android 和 Android TV 上,您也可以使用自訂配置連結。自訂配置 URI 中必須包含應用程式的 package_id。這樣一來,如果使用者尚未安裝您的應用程式,系統就會將他們帶往 Play 商店的應用程式頁面。因此,下列 URI 格式是媒體動作唯一可接受的自訂配置格式:

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

例如:

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

詳情請參閱完整規範

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

例如:

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

其他 URI 格式 (例如下列範例) 並非媒體動作可接受的自訂配置連結:

scheme://{path}

例如:

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

最佳做法

如果應用程式未安裝,且您沒有網頁播放器,請設定網路伺服器,自動將使用者重新導向至 Android 或 App Store 安裝應用程式。如要重新導向,請使用 Firebase 動態連結或第三方智慧連結平台。

如果使用者尚未安裝您的應用程式,但您網頁播放器,請提供連結或智慧橫幅至 Android 或 App Store,方便使用者安裝您的應用程式。以下是已導入智慧橫幅的範例:

已導入智慧橫幅廣告的範例

下表列出深層連結的相關規定和限制 (適用於 iOS、Android 和 AndroidTV):

iOS Android 和 Android TV
http://https:// 必填 如果行動網站支援播放功能,建議使用此做法。
android-app://intent:// 如果行動網站不支援播放功能,建議使用這個選項。
foo:// (任意字串) 不允許 不允許

平台類型

如要確保你的內容可在 Google 的多個平台 (搜尋、Google 助理、Android TV 和 Chromecast) 上播放,請遵守下列規定:

下表列出支援媒體動作的平台:

平台 說明
http://schema.org/DesktopWebPlatform 在電腦網路瀏覽器中搜尋平台。
http://schema.org/MobileWebPlatform 行動版網路瀏覽器上的搜尋平台。
http://schema.org/AndroidPlatform 在 Android 應用程式中使用搜尋和 PlayGuide 平台。
http://schema.org/AndroidTVPlatform Android TV 應用程式中的 Android TV 平台。
http://schema.org/IOSPlatform 在 iOS 應用程式中搜尋平台。
http://schema.googleapis.com/GoogleVideoCast Chromecast 裝置上的 Cast 和 Google Home 平台。
http://schema.googleapis.com/GoogleAudioCast 僅限收聽動作。Chromecast 裝置上的 Cast 和 Google Home 平台。

實體有兩個不同的深層連結的範例:

"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" ]
        }
      ],
    }
  ],
  ...
}

播放行為

對於大多數內容,當 Google 將使用者導向您的應用程式或平台時,我們要求您自動播放所選內容。讓使用者快速開始觀看或聆聽內容。

Watch Actions 播放行為

針對 Watch Actions,我們要求以下播放行為。

所有深層連結:Movie、TVEpisode、TVSeries 和 TVSeason

  • 登入或購買行為:如果服務需要登入或購買,則必須在之後播放電影或劇集,視電影或劇集類型而定。詳情請參閱下列深層連結規範。

  • 播放:如果您的服務會追蹤使用者的狀態,播放時必須從使用者在電影或劇集上先前設定的標記開始。否則,播放內容必須從內容的開頭開始。

  • 自動播放:視平台而定,使用者選取目標劇集或電影後,您的服務必須以醒目方式播放內容。

    • 搜尋:建議使用自動播放功能,但非必要。如果不支援自動播放功能,則內容必須在使用者前往應用程式或服務後,點按一次即可播放。
    • Android TV:電影和劇集必須支援自動播放功能。

僅限 TVSeries 和 TVSeason 深層連結

  • 指定目標集數:請務必選取正確的目標集數。如果您的服務追蹤使用者的狀態,目標劇集必須是使用者上次停止觀看的劇集。或者,如果使用者已完全看完上次觀看的劇集,則可將目標劇集改為後續劇集。否則,請自行選擇以下任一集數做為目標集數:

    • TVSeries
      • 系列劇的第一集。建議用於連續劇。
      • 最新一季的第一集。建議用於長時間播出的連續劇。
      • 最新一集。建議用於每日或新聞相關節目。
    • TVSeason
      • 本季第一集。建議用於連續劇。
      • 最新一集。建議用於每日或新聞相關節目。

    TVSeriesTVSeason 的深層連結必須是靜態 (不會變更),且會解析至目標集數。請勿使用特定集數的深層連結。

    下表提供幾個範例,說明 TVSeriesTVSeasonTVEpisode 實體類型所需的目標劇集選取邏輯:

    如果使用者上次觀看的是第 6 季第 24 集,則指定該集 如果使用者尚未觀看任何劇集,則指定目標劇集
    系列叢書深層連結
    • S6E24 (如果使用者尚未看完 S6E24)
    • S6E25 (如果使用者已看完 S6E24)

    可使用下列其中一個值:

    • 系列叢書第一集
    • 最新一季的第一集
    • 最新劇集
    影集深層連結 (第 1 季至第 5 季)
    • 使用者上次觀看的該季劇集,或該季的第一集 (如果使用者尚未觀看該季的任何劇集)。
    • 本季第一集
    影集深層連結 (S6)
    • S6E24 (如果使用者尚未看完 S6E24)
    • S6E25 (如果使用者已看完 S6E24)

    可使用下列其中一個值:

    • 本季第一集
    • 最新劇集
    單集節目深層連結
    • 獲點擊的單集節目。
    • 獲點擊的單集節目。

Listen 動作的播放行為

對於 Listen 動作,我們要求以下播放行為:

  • 使用者前往應用程式或服務後,內容必須在一次點擊內播放。
  • 如果應用程式或平台需要登入,則必須在登入後立即或在點按一次後播放內容。
  • 您的應用程式或平台必須至少提供一種方式,讓所有使用者播放特定歌曲、專輯、藝人或播放清單。
    • 如果使用者無法播放特定內容 (例如沒有必要的訂閱項目),您的服務必須說明使用者在進入應用程式或平台後,需要採取哪些行動才能播放特定內容。

我們建議您在應用程式或平台中採用下列最佳做法:

  • 對於 MusicGroup,每次使用者選取藝人時,都會播放該藝人的不同內容。
  • 如果是 MusicAlbum,請按照專輯中的顯示順序播放內容。
  • 對於 MusicPlaylist,每次使用者選取播放清單時,都會播放播放清單中的不同內容。

請完成下列步驟:

  1. 請針對每項內容檢查是否有不同平台的深層連結。
  2. 針對每個深層連結,請針對其進入點 (深層連結會導向的應用程式或平台頁面) 提出以下問題:
    • 進入點 (而非內容) 是否支援多種語言?
    • 進入點是否支援多種字幕語言?
    • 進入點是否支援多個攝影機角度?
    • 入口點是否支援多種影片格式?

如果您對上述任何問題的答案為「是」,就必須為該深層連結提供 additionalProperty 屬性。請參閱 additionalProperty 範例。