با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
هر زمان که دکمه Cast فشار داده شود، گفتگوی Cast نشان داده می شود. گفتگوی Cast به کاربران امکان اتصال، کنترل و قطع ارتباط از گیرنده های وب را می دهد.
اگر در حال توسعه یک پیادهسازی سفارشی یا ساختن یک برنامه برای iOS یا Chrome هستید، باید این گفتگو را به روشی ثابت پیادهسازی کنید تا کاربران تشخیص دهند و به آن اعتماد کنند تا در دستگاهها، برنامهها و پلتفرمها بهطور مداوم کار کند. برای مثال به برنامه های مرجع مراجعه کنید.
مورد نیاز (رفتار پیش فرض Android MediaRouter ): A وقتی برنامه فرستنده به گیرنده Cast متصل نیست، با ضربه زدن روی دکمه Cast کادر گفتگوی Cast نشان داده می شود B عنوان گفتگوی Cast، "Cast to" ظاهر می شود C گفتگوی Cast لیستی از گیرنده های وب موجود را نشان می دهد D هر گیرنده ای که در حال پخش است باید " نام برنامه ارسال محتوا" را نمایش دهد.
به سناریوهای چند کاربره توجه کنید:
وقتی کاربر دیگری به گیرندهای متصل میشود که در حال ارسال از همان برنامه و حساب است، برنامه فرستنده کنترلهای محتوای ارسالشده را فراهم میکند.
وقتی کاربر دیگری به گیرندهای متصل میشود که در حال ارسال از برنامهای که در حال ارسال نیست، برنامه فرستنده قبلی قطع میشود و برنامه فرستنده جدید متصل میشود.
برای iOS، هنگام ارسال محتوا برای اولین بار، کاربران باید با اجازه دادن به شبکه محلی (LNA) به دستگاههای Cast موافقت کنند. یک صفحه اطلاعات بینابینی به کاربران ارائه می شود که توضیح می دهد چرا به این مجوز نیاز است، و به دنبال آن گفتگوی استاندارد مجوزهای Apple LNA ارائه می شود.
پس از ارسال برای اولین بار، اگر هنگام ضربه زدن روی دکمه Cast در حالی که کاربر روی Wi-Fi است، هیچ دستگاهی پیدا نشد، یک صفحه راهنما ارائه میشود که توضیح میدهد چرا گیرندههای وب ممکن است در دسترس نباشند (مثلاً دسترسی به شبکه محلی غیرفعال است یا مشکلی در شبکه Wi-Fi وجود دارد).
مورد نیاز : ارسال اولین بار: پس از ضربه زدن روی دکمه Cast برای اولین بار، باید یک Interstitial نشان داده شود تا به کاربر توضیح دهد چرا باید به برنامه اجازه دسترسی به دستگاه های شبکه محلی را بدهد. بینابینی باید شامل اطلاعاتی در مورد چرایی دسترسی به شبکه محلی باشد تا احتمال پذیرش دسترسی مجوز محلی توسط کاربر افزایش یابد. B گیرندهها در دسترس نیستند: با ضربه زدن روی دکمه Cast یک صفحه راهنما نمایش داده میشود که دلایل احتمالی کاربر قادر به کشف گیرندههای وب نیست، همراه با پیوندهایی به تنظیمات برای رفع مشکلات مجوز LNA را توضیح میدهد.
ارسال اولین بار (iOS)
ارسال اولین بار: مجوزهای دسترسی شبکه بینابینی و محلی
مورد نیاز A هنگامی که برنامه فرستنده به گیرنده وب متصل است، ضربه زدن روی دکمه Cast کادر گفتگوی Cast را نشان می دهد B عنوان گفتگوی Cast "Receiver-Name" ظاهر می شود C کادر گفتگوی Cast دکمه ای برای توقف ارسال با برچسب دکمه "STOP CASTING" را نشان می دهد (برای اطلاعات بیشتر در مورد قطع، رجوع کنید فرستنده پخش را متوقف می کند )
مورد نیاز یک عنوان گفتگوی Cast "Receiver-Name" ظاهر می شود B گیرنده یا محتوایی که در حال پخش است در زیر عنوان نشان داده شده است C گفتگوی Cast دکمه "توقف ارسال" را نشان می دهد که ارسال را متوقف می کند (برای اطلاعات بیشتر رجوع کنید فرستنده پخش را متوقف می کند )
بهترین تمرین
برای بهترین تجربه کاربری، علاوه بر کنترلهای موجود در گفتگوی Cast، کنترلهای دائمی نیز ارائه کنید.
اندروید
گفت و گوی ارسالی، در حین پخش
گیرنده در حال پخش محتوا
iOS
گفت و گوی ارسالی، در حین پخش
گیرنده در حال پخش محتوا
کروم
گفت و گوی ارسالی، در حین پخش
گیرنده در حال پخش محتوا
تصاویر استفاده شده در این راهنمای طراحی توسط بنیاد Blender ساخته شده است و تحت مجوز کپی رایت یا Creative Commons به اشتراک گذاشته شده است.
رویای فیل: (ج) حق چاپ 2006، بنیاد بلندر / موسسه هنر رسانه هلند / www.elephantsdream.org
Sintel: (ج) کپی رایت Blender Foundation | www.sintel.org
Tears of Steel: (CC) Blender Foundation | mango.blender.org
Big Buck Bunny: (ج) حق چاپ 2008، Blender Foundation / www.bigbuckbunny.org
تاریخ آخرین بهروزرسانی 2025-08-29 بهوقت ساعت هماهنگ جهانی.
[null,null,["تاریخ آخرین بهروزرسانی 2025-08-29 بهوقت ساعت هماهنگ جهانی."],[[["\u003cp\u003eThe Cast dialog enables users to connect to, manage, and disconnect from Web Receivers and should be implemented consistently across platforms.\u003c/p\u003e\n"],["\u003cp\u003eOn iOS, users must grant local network access permission for initial casting and may encounter a help screen if no devices are found.\u003c/p\u003e\n"],["\u003cp\u003eWhen connected, the Cast dialog displays the receiver name and a "STOP CASTING" button, offering controls for the casting session.\u003c/p\u003e\n"],["\u003cp\u003eFor optimal user experience, it's recommended to include persistent controls alongside those within the Cast dialog, enhancing user interaction.\u003c/p\u003e\n"],["\u003cp\u003eAndroid apps can leverage the MediaRouter component for built-in Cast dialog UX, simplifying implementation.\u003c/p\u003e\n"]]],[],null,["# Cast Dialog\n\nThe Cast dialog is shown whenever the Cast button is pressed. The Cast dialog lets users\nconnect, control, and disconnect from Web Receivers.\n| **Note:** For Android apps, use the `MediaRouter` component from the MediaRouter Support Library to implement the Cast dialog. It has all of the UX requirements built right in.\n| **Note:** For iOS senders, a special Local Network Access interstitial dialog must be displayed the first time a user attempts to cast.\n\nIf you're developing a custom implementation or building an app for iOS or Chrome, you must\nimplement this dialog in a consistent way, so that users recognize and trust it to function\nconsistently across devices, apps and platforms. Refer to the\n[Reference apps](/cast/docs/sample_apps#reference_apps) for examples.\n\n### [Cast dialog, not connected (receivers available)](#sender-cast-menu-available)\n\n\n**Required** (default behavior of [Android MediaRouter](https://developer.android.com/reference/androidx/mediarouter/media/MediaRouter)):\n\n\nA When the sender app is not connected to a Cast receiver,\ntapping the Cast button shows the Cast dialog\n\n\nB The Cast dialog title, \"Cast to\" appears\n\n\nC The Cast dialog shows a list of available Web Receivers\n\n\nD Each receiver currently casting should display, \"Casting\n*app name*\"\n\n**Note the multi-user scenarios:**\n\n- When another user connects to a receiver currently casting from the same app and account, the sender app provides the controls for the cast content.\n- When another user connects to a receiver currently casting from an app that is not casting, the previous sender app disconnects and the new sender app connects.\n\n### Android\n\nCast dialog, not connected \nCast home screen \n\n### iOS\n\nCast dialog, not connected \nCast home screen \n\n### Chrome\n\nCast dialog, not connected \nCast home screen \n\n### [Cast dialog, not connected (iOS only)](#sender-cast-menu-available)\n\n\nFor iOS, when casting for the first time, users must consent to allow local network access (LNA) to\nCast devices. An interstitial information screen is presented\nto users explaining why this permission is needed, followed by the standard Apple LNA\npermissions dialog.\n\n\nAfter casting for the first time, if no devices are found when the Cast button is tapped while the\nuser is on Wi-Fi, a help screen is presented\nexplaining why Web Receivers might not be available (for example,\nlocal network access is disabled, or there is a problem with the Wi-Fi network).\n\n\n**Required** :\n\n\nA First-time casting: After tapping on the Cast button\nfor the first time,\nan Interstitial must be shown to explain to the user why they should allow\nthe app to access local network devices. The interstitial should include information on\nwhy local network access is needed, to increase the likelihood of the user accepting\nlocal permission access.\n\n\nB Receivers unavailable: Tapping the Cast button\ndisplays a help screen explaining possible reasons the user\nis unable to discover Web Receivers, along with links to Settings to fix LNA permissions issues. \n\n### First-time casting (iOS)\n\nFirst-time casting: interstitial and local network access permissions \n\n### Receivers unavailable\n\nReceivers unavailable \n\n### [Cast dialog, connected but not casting](#sender-cast-menu-connected)\n\n\n**Required**\n\n\nA When the sender app is connected to a Web Receiver,\ntapping the Cast button shows the Cast dialog\n\n\nB The Cast dialog title \"Receiver-Name\" appears\n\n\nC The Cast dialog shows a button to stop casting\nwith button label \"STOP CASTING\" (for more information about disconnecting, see\n[Sender stops cast](/cast/docs/design_checklist/sender#sender-control-end)) \n\n### Android\n\nCast dialog, connected but not casting \nReceiver app loaded / idle \n\n### iOS\n\nCast dialog, connected but not casting \nReceiver app loaded / idle \n\n### [Cast dialog, while casting](#sender-cast-menu-casting)\n\n\n**Required**\n\n\nA The Cast dialog title \"Receiver-Name\" appears\n\n\nB The receiver or content currently casting is shown below\nthe title\n\n\nC The Cast dialog shows a \"STOP CASTING\" button that stops\ncasting (for more information see\n[Sender stops cast](/cast/docs/design_checklist/sender#sender-control-end))\n\n**Best practice**\n\n- For the best user experience, provide [persistent controls](/cast/docs/design_checklist/sender#sender-mini-controller) in addition to the controls in the Cast dialog.\n\n### Android\n\nCast dialog, while casting \nReceiver playing content \n\n### iOS\n\nCast dialog, while casting \nReceiver playing content \n\n### Chrome\n\nCast dialog, while casting \nReceiver playing content \n\n**Images used in this design guide**\nare courtesy of the Blender Foundation, shared under copyright or Creative Commons license.\n\n- Elephant's Dream: (c) copyright 2006, Blender Foundation / Netherlands Media Art Institute / www.elephantsdream.org\n- Sintel: (c) copyright Blender Foundation \\| www.sintel.org\n- Tears of Steel: (CC) Blender Foundation \\| mango.blender.org\n- Big Buck Bunny: (c) copyright 2008, Blender Foundation / www.bigbuckbunny.org"]]