Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
La finestra di dialogo Trasmetti viene visualizzata ogni volta che viene premuto il pulsante Trasmetti. La finestra di dialogo Trasmetti consente agli utenti di collegarsi, controllare e disconnettersi dai ricevitori web.
Se stai sviluppando un'implementazione personalizzata o creando un'app per iOS o Chrome, devi implementare questa finestra di dialogo in modo coerente, in modo che gli utenti la riconoscano e si fidino del fatto che funzioni in modo coerente su dispositivi, app e piattaforme. Per esempi, consulta le app di riferimento.
Obbligatorio (comportamento predefinito di
MediaRouter di Android):
A Quando l'app mittente non è connessa a un ricevitore di trasmissione,
toccando il pulsante Trasmetti viene visualizzata la finestra di dialogo Trasmetti
B Viene visualizzato il titolo della finestra di dialogo Trasmetti "Trasmetti a"
C La finestra di dialogo Trasmetti mostra un elenco di ricevitori web disponibili
D Ogni ricevitore che sta trasmettendo deve mostrare "Trasmissione
nome dell'app"
Tieni presente gli scenari con più utenti:
Quando un altro utente si connette a un ricevitore che sta trasmettendo
dalla stessa app e dallo stesso account, l'app mittente fornisce i controlli per
i contenuti trasmessi.
Quando un altro utente si connette a un ricevitore che sta trasmettendo da un'app che non trasmette, l'app mittente precedente si disconnette e si connette la nuova app mittente.
Per iOS, quando trasmetti per la prima volta, gli utenti devono acconsentire all'accesso alla rete locale (LNA) per i dispositivi di trasmissione. Viene mostrata agli utenti una schermata informativa interattiva che spiega perché è necessaria questa autorizzazione, seguita dalla finestra di dialogo delle autorizzazioni LNA di Apple standard.
Dopo la prima trasmissione, se non vengono trovati dispositivi quando viene toccato il pulsante Trasmetti mentre l'utente è connesso alla rete Wi-Fi, viene visualizzata una schermata di aiuto che spiega perché i ricevitori web potrebbero non essere disponibili (ad esempio, l'accesso alla rete locale è disattivato o si è verificato un problema con la rete Wi-Fi).
Obbligatorio:
A Trasmissione per la prima volta: dopo aver toccato il pulsante Trasmetti per la prima volta, deve essere mostrato un popup per spiegare all'utente perché deve consentire all'app di accedere ai dispositivi della rete locale. L'interstitial deve includere informazioni sul motivo per cui è necessario l'accesso alla rete locale, per aumentare le probabilità che l'utente accetti l'accesso alle autorizzazioni locali.
B Ricevitori non disponibili: toccando il pulsante Trasmetti viene visualizzata una schermata di aiuto che spiega i possibili motivi per cui l'utente non riesce a rilevare i ricevitori web, insieme ai link alle Impostazioni per risolvere i problemi di autorizzazione LNA.
Trasmissione per la prima volta (iOS)
Prima trasmissione: autorizzazioni per annunci interstitial e accesso alla rete locale
Obbligatorio A Quando l'app mittente è connessa a un ricevitore web,
toccando il pulsante Trasmetti viene visualizzata la finestra di dialogo Trasmetti
B Viene visualizzato il titolo della finestra di dialogo Trasmetti "Nome-ricevitore"
C La finestra di dialogo Trasmetti mostra un pulsante per interrompere la trasmissione
con l'etichetta del pulsante "INTERRUPI TRASMISSIONE" (per ulteriori informazioni sulla disconnessione, consulta
Il mittente interrompe la trasmissione)
Android
Finestra di dialogo di trasmissione, connesso ma nessuna trasmissione
App di ricezione caricata / inattiva
iOS
Finestra di dialogo di trasmissione, connesso ma nessuna trasmissione
Obbligatorio A Viene visualizzato il titolo della finestra di dialogo Trasmissione "Nome-ricevente"
B Il ricevitore o i contenuti attualmente in trasmissione vengono mostrati sotto
il titolo
C La finestra di dialogo Trasmissione mostra un pulsante "INTERRUPI TRASMISSIONE" che interrompe la trasmissione (per ulteriori informazioni, consulta
Il mittente interrompe la trasmissione)
Best practice
Per un'esperienza utente ottimale, fornisci controlli permanenti oltre a quelli nella finestra di dialogo di trasmissione.
Android
Finestra di dialogo Trasmetti, durante la trasmissione
Ricevitore che riproduce contenuti
iOS
Finestra di dialogo Trasmetti, durante la trasmissione
Ricevitore che riproduce contenuti
Chrome
Finestra di dialogo Trasmetti, durante la trasmissione
Ricevitore che riproduce contenuti
Le immagini utilizzate in questa guida di progettazione sono fornite dalla Blender Foundation e condivise con copyright o licenza Creative Commons.
Elephant's Dream: (c) copyright 2006, Blender Foundation / Netherlands Media Art Institute /
www.elephantsdream.org
Sintel: (c) copyright Blender Foundation | www.sintel.org
Tears of Steel: (CC) Blender Foundation | mango.blender.org
Big Buck Bunny: (c) copyright 2008, Blender Foundation / www.bigbuckbunny.org
[null,null,["Ultimo aggiornamento 2025-08-31 UTC."],[[["\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"]]