پیوندهای عمیق محتوای خود را برای پلتفرم مشخص کنید

هنگامی که یک کاربر اقدامات رسانه ای را روی محتوا شروع می کند (برای مثال، کاربر روی نماد شما در جستجوی Google کلیک می کند)، Google با استفاده از پیوند عمیق محتوا، کاربر را مستقیماً به محتوای برنامه یا پلت فرم شما می برد.

شرایط زیر برای پیوندهای عمیق وجود دارد:

  • urlTemplate (یک شی هدف ) به پیوند عمیق نیاز دارد.
  • پیوندهای عمیق باید محتوای مورد نظر خود را در تمام پلتفرم های مشخص شده باز کنند.
  • پیوندهای عمیق می توانند شامل پارامترهای (&) یا تگ های لنگر (#) باشند.

نمونه ای از @id ، url و 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",
       ...
     },
   ...
   },
   ...
}

شبه کد زیر نشان دهنده رفتار مورد نظر در هنگام شروع پخش توسط کاربر است:

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 و Android TV نیز می‌توانید از پیوندهای طرح سفارشی استفاده کنید. package_id برنامه شما باید در URI طرح سفارشی گنجانده شود. این تضمین می کند که اگر برنامه شما نصب نشده باشد، کاربر به صفحه برنامه شما در Play Store منتقل می شود. بنابراین، فرمت‌های URI زیر تنها قالب‌های طرح سفارشی قابل قبول برای Media Actions هستند:

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، مانند مثال زیر، پیوندهای طرح سفارشی قابل قبولی برای Media Actions نیستند:

scheme://{path}

مثلا:

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

بهترین شیوه ها

در صورتی که برنامه شما نصب نشده است و پخش کننده وب ندارید، وب سرور خود را پیکربندی کنید تا به طور خودکار کاربر را به Android یا App Store هدایت کند تا برنامه شما را نصب کند. برای تغییر مسیر، از پیوندهای دینامیک Firebase یا پلتفرم های لینک هوشمند شخص ثالث استفاده کنید.

در صورتی که برنامه شما نصب نشده است و یک پخش کننده وب دارید ، یک پیوند یا بنر هوشمند به Android یا App Store ارائه دهید تا کاربران برنامه شما را نصب کنند. نمونه زیر یک بنر هوشمند پیاده سازی شده است:

نمونه ای از بنر هوشمند پیاده سازی شده

جدول زیر الزامات و محدودیت‌های پیوندهای عمیق را نشان می‌دهد، زیرا مربوط به iOS، Android و AndroidTV هستند:

iOS اندروید و اندروید تی وی
http:// یا https:// ضروری اگر وب‌سایت تلفن همراه از پخش پشتیبانی می‌کند، توصیه می‌شود.
android-app:// یا intent:// N/A اگر وب‌سایت تلفن همراه از پخش پشتیبانی نمی‌کند، توصیه می‌شود.
foo:// (رشته دلخواه) مجاز نیست مجاز نیست

انواع پلت فرم

برای اطمینان از اینکه محتوای شما در پلتفرم‌های چندگانه Google (جستجو، دستیار، Android TV و Chromecast) در دسترس است، شرایط زیر را رعایت کنید:

  • همه پلتفرم های پشتیبانی شده توسط شریک به یک پیوند عمیق برای محتوای شما نیاز دارند.
  • برای پلتفرم‌های Chromecast، باید با استفاده از آخرین SDK گیرنده Cast Application Framework (CAF) یک گیرنده بسازید.
  • برای پلتفرم‌های تلفن همراه (اندروید و iOS)، الزامات را در بخش Use deep links to start playback ببینید.

جدول زیر شامل فهرستی از پلتفرم هایی است که از Media Actions پشتیبانی می کنند:

سکو شرح
http://schema.org/DesktopWebPlatform پلت فرم جستجو در مرورگر وب دسکتاپ.
http://schema.org/MobileWebPlatform پلت فرم جستجو در مرورگر وب تلفن همراه.
http://schema.org/AndroidPlatform پلتفرم های جستجو و PlayGuide در برنامه اندروید.
http://schema.org/AndroidTVPlatform پلت فرم Android TV در برنامه Android TV.
http://schema.org/IOSPlatform پلت فرم جستجو در برنامه iOS.
http://schema.googleapis.com/GoogleVideoCast پلتفرم‌های Cast و Home در دستگاه Chromecast.
http://schema.googleapis.com/GoogleAudioCast فقط Listen Actions پلتفرم‌های Cast و Home در دستگاه Chromecast.

مثالی از یک موجودیت با دو پیوند عمیق متفاوت:

"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 کاربران را به برنامه یا پلتفرم شما می برد، از شما می خواهیم که محتوای انتخاب شده را به صورت خودکار پخش کنید. این به کاربران اجازه می دهد تا به سرعت شروع به تماشا یا گوش دادن به محتوا کنند.

رفتار پخش Actions را تماشا کنید

برای Watch Actions، به رفتار پخش زیر نیاز داریم.

همه پیوندهای عمیق: فیلم، قسمت تلویزیونی، سریال تلویزیونی و فصل تلویزیون

  • رفتار ورود به سیستم یا خرید: اگر سرویس شما نیاز به ورود به سیستم یا خرید دارد، فیلم یا قسمت باید متناسب با نوع آن، پس از آن پخش شود. برای جزئیات بیشتر، دستورالعمل های پیوند عمیق را که در ادامه می آید ببینید.

  • پخش: اگر سرویس شما وضعیت کاربر را ردیابی می کند، پخش باید از نشانگر قبلی کاربر در فیلم یا قسمت شروع شود. در غیر این صورت، پخش باید از ابتدای محتوا شروع شود.

  • پخش خودکار: بسته به پلتفرم، لازم است سرویس شما پس از انتخاب قسمت یا فیلم مورد نظر توسط کاربر، محتوا را به طور برجسته پخش کند.

    • جستجو: پخش خودکار بسیار توصیه می شود، اما لازم نیست. اگر پخش خودکار پشتیبانی نمی‌شود، پس از اینکه کاربر به برنامه یا سرویس شما منتقل شد، محتوا باید با یک کلیک پخش شود.
    • Android TV: پخش خودکار برای فیلم و قسمت مورد نیاز است.

فقط پیوندهای عمیق سریال TV و TVSeason

  • انتخاب قسمت هدف: باید قسمت مورد نظر را درست انتخاب کنید. اگر سرویس شما وضعیت یک کاربر را ردیابی می کند، قسمت مورد نظر باید قسمتی باشد که کاربر آخرین بار تماشای آن را متوقف کرده است. یا اگر کاربر اپیزودی را که آخرین بار تماشا کرده بود به طور کامل به پایان رساند، در عوض قسمت مورد نظر را به قسمت بعدی تبدیل کنید. در غیر این صورت، قسمت مورد نظر به تشخیص شما باید یکی از موارد زیر باشد:

    • TVSeries
      • قسمت اول سریال. برای نمایش های سریالی توصیه می شود.
      • اولین قسمت از آخرین فصل. برای نمایش های سریالی طولانی مدت توصیه می شود.
      • آخرین قسمت. برای نمایش های روزانه یا مرتبط با اخبار توصیه می شود.
    • TVSeason
      • قسمت اول فصل. برای نمایش های سریالی توصیه می شود.
      • آخرین قسمت. برای نمایش های روزانه یا مرتبط با اخبار توصیه می شود.

    پیوند عمیق برای TVSeries یا TVSeason باید ثابت (بدون تغییر) باشد و به قسمت مورد نظر برسد. از لینک عمیق برای یک قسمت خاص استفاده نکنید.

    جدول زیر چندین مثال ارائه می دهد که منطق انتخاب قسمت مورد نیاز برای تیپ های TVSeries ، TVSeason و TVEpisode را نشان می دهد:

    اگر کاربر آخرین بار S6E24 را تماشا کرده است، قسمت مورد نظر را هدف قرار دهید اگر کاربر هیچ قسمتی را تماشا نکرده است، قسمت را هدف قرار دهید
    لینک عمیق سریال
    • S6E24 (اگر کاربر S6E24 را تمام نکرده باشد)
    • S6E25 (اگر کاربر تماشای S6E24 را تمام کرده باشد)

    یکی از موارد زیر:

    • قسمت اول سریال
    • قسمت اول آخرین فصل
    • آخرین قسمت
    پیوند عمیق فصل (S1-S5)
    • آخرین قسمتی که کاربر در آن فصل تماشا کرده است، یا اگر کاربر هیچ قسمتی را در آن فصل ندیده باشد، اولین قسمت فصل را تماشا کرده است.
    • قسمت اول فصل
    پیوند عمیق فصل (S6)
    • S6E24 (اگر کاربر S6E24 را تمام نکرده باشد)
    • S6E25 (اگر کاربر تماشای S6E24 را تمام کرده باشد)

    یکی از موارد زیر:

    • قسمت اول فصل
    • آخرین قسمت
    لینک عمیق قسمت
    • قسمت خاصی که کلیک شد.
    • قسمت خاصی که کلیک شد.

رفتار پخش کنش‌ها گوش کنید

برای Listen Actions، به رفتار پخش زیر نیاز داریم:

  • پس از اینکه کاربر به برنامه یا سرویس شما منتقل شد، محتوا باید با یک کلیک پخش شود.
  • اگر برنامه یا پلتفرم شما نیاز به ورود به سیستم دارد، باید محتوا را بلافاصله یا با یک کلیک پس از ورود به سیستم پخش کند.
  • برنامه یا پلتفرم شما باید حداقل یک راه را برای همه کاربران برای پخش دقیق آهنگ، آلبوم، هنرمند یا لیست پخش ارائه دهد.
    • برای کاربرانی که واجد شرایط پخش محتوای دقیق نیستند (مثلاً اشتراک لازم را ندارند)، سرویس شما باید توضیح دهد که کاربر برای واجد شرایط شدن برای پخش محتوای دقیق پس از ورود به برنامه یا پلتفرم شما، چه کاری باید انجام دهد.

ما بهترین روش‌های زیر را برای برنامه یا پلتفرم شما توصیه می‌کنیم:

  • برای MusicGroup ، هر بار که کاربر هنرمندی را انتخاب می‌کند، محتوای متفاوتی از هنرمند پخش کنید.
  • برای MusicAlbum ، محتوا را به ترتیب ظاهر در آلبوم پخش کنید.
  • برای MusicPlaylist ، هر بار که کاربر لیست پخش را انتخاب می کند، محتوای متفاوتی را از لیست پخش پخش کنید.

موارد زیر را انجام دهید:

  1. برای هر محتوا، بررسی کنید که آیا پیوندهای عمیق متفاوتی بر اساس پلتفرم دارد یا خیر.
  2. برای هر پیوند عمیق، سؤالات زیر را در مورد نقطه ورودی آن بپرسید (صفحه برنامه یا پلتفرم شما که پیوند عمیق شما را به آن می برد):
    • آیا نقطه ورودی (نه محتوا) از چندین زبان پشتیبانی می کند؟
    • آیا نقطه ورودی از چندین زبان زیرنویس پشتیبانی می کند؟
    • آیا نقطه ورودی از چندین زاویه دوربین پشتیبانی می کند؟
    • آیا نقطه ورودی از چندین فرمت ویدیویی پشتیبانی می کند؟

اگر پاسخ شما به هر یک از این سؤالات مثبت است، باید ویژگی additionalProperty را برای آن پیوند عمیق ارائه دهید. مثال extraProperty را ببینید.