App Sender

Quando i contenuti vengono trasmessi a un ricevitore web, l'utente deve sempre essere in grado di controllarli dall'app del mittente.

Nota: in conformità ai Termini di servizio aggiuntivi per gli sviluppatori dell'SDK Google Cast, un'applicazione multimediale Cast deve utilizzare le API di controllo della riproduzione (Messaggi di riproduzione multimediali) definite per l'SDK per controllare la riproduzione di contenuti multimediali sul ricevitore web.

Le app dei mittenti devono fornire controlli di trasmissione in queste aree:

Lo stato e i controlli di riproduzione della trasmissione in queste aree dell'app del mittente devono essere sincronizzati con le modifiche della riproduzione che avvengono sul web ricevitore, anche se non provengono dall'app del mittente. Ciò consentirà una corretta gestione sia dei comandi multi-mittente sia del controllo della riproduzione proveniente dai telecomandi, dai pulsanti e così via del dispositivo.

Android

Controlli delle finestre di dialogo di trasmissione

Mini controller

Controlli delle notifiche

Controlli blocco schermo

iOS

Controlli delle finestre di dialogo di trasmissione

Mini controller

Chrome

Controlli delle finestre di dialogo di trasmissione

Mini controller

 

  Controlli del volume del mittente

L'app del mittente deve consentire agli utenti di regolare il volume dei contenuti in riproduzione sulla TV o sugli altoparlanti utilizzando i tasti del volume hardware e/o il cursore del volume del software sul dispositivo di invio. Queste impostazioni controllano uno dei seguenti elementi:

  • Il livello audio inviato alla TV per i dispositivi Google Cast, ad esempio Chromecast.
  • Il volume effettivo della TV/altoparlante per TV Google Cast, TV con Android TV integrato e smart speaker.

Obbligatorio
  A   L'app del mittente deve consentire agli utenti di regolare il volume dei contenuti in riproduzione sulla TV o sugli altoparlanti utilizzando i tasti del volume hardware e/o il cursore del volume del software sul dispositivo di invio.

  • Android: il supporto per i pulsanti hardware e il cursore del volume del software è obbligatorio.
  • iOS: il cursore del volume del software è obbligatorio.
  • Web/Chrome: il supporto del dispositivo di scorrimento del volume del software è obbligatorio.

  B   Sul dispositivo mobile, il cursore del volume del software deve essere disponibile nella finestra di dialogo Trasmetti, durante la trasmissione.
  C   Il cursore del volume nell'app del mittente deve sincronizzarsi con il volume del ricevitore web corrente dopo la connessione al ricevitore web e rimanere sincronizzato.
  D   Il cursore del volume nell'app del mittente deve rispecchiare le modifiche del volume apportate da altri mittenti o dal telecomando dell'app Chromecast.
  E   Le app mittente non devono mai impostare il volume a un livello predefinito, ma devono solo superare le modifiche del volume avviate dall'utente.
  F   Solo Android. Quando utilizzi i pulsanti hardware per modificare il livello del volume sul web ricevitore, deve essere visualizzato un cursore del volume visivo (con un'icona Trasmetti a sinistra) quando vengono premuti i pulsanti del volume hardware. Nota: per Android Gingerbread (versione 2.3), l'icona Trasmetti non viene visualizzata.

Best practice

  • Incrementi del volume:
    • Android: il framework incrementa il volume automaticamente.
    • iOS e Chrome. Per i pulsanti del volume hardware, utilizza incrementi uguali o inferiori al 5% dell'intervallo di volume completo del ricevitore web per i dispositivi audio/video e incrementi pari al 2% dell'intervallo completo del volume del ricevitore web per i dispositivi solo audio.

  Controller espanso del mittente

L'app del mittente deve fornire un controller espanso per i contenuti trasmessi.

Obbligatorio
  A   Identifica i contenuti trasmessi visualizzando il titolo o l'artwork dei contenuti.
  B   Prima dell'inizio della riproduzione, mostra un indicatore di caricamento e il titolo dei contenuti o l'artwork.
  C   All'avvio dei contenuti, identifica lo stato del ricevitore web.
  D   Fornire i controlli pertinenti.
  E   All'estremità sinistra della barra di scorrimento viene visualizzato il tempo di riproduzione attuale.
Alla destra, mostra la durata totale dello stream, se nota e se non si tratta di un live streaming.
  F   Nascondi i controlli non pertinenti alla trasmissione.
  G   Non disconnettere o interrompere la trasmissione quando gli utenti escono dal controller espanso.
  H   Offri un modo semplice per tornare al controller espanso quando gli utenti escono.

Best practice

  • Fornire un cursore della posizione di riproduzione per gli stream multimediali.
  • Mostrare artwork e metadati relativi a contenuti significativi.
  • Identifica il tempo trascorso e la durata dei contenuti per gli stream multimediali.

Android

Caricamento dei contenuti del mittente

Caricamento dei contenuti del mittente

Caricamento dei contenuti del ricevitore

Riproduzione dei contenuti del mittente

Ricevitore web che riproduce contenuti

iOS

Caricamento dei contenuti del mittente

Caricamento dei contenuti del ricevitore web

Riproduzione dei contenuti del mittente

Ricevitore web che riproduce contenuti

Chrome

Caricamento dei contenuti del mittente

Caricamento dei contenuti del ricevitore web

Riproduzione dei contenuti del mittente

Ricevitore web che riproduce contenuti

 

  Mini controller mittente

Durante la trasmissione, dovrebbe essere visualizzato un controllo piccolo e persistente, chiamato mini controller, quando l'utente esce dalla pagina di contenuti corrente o dal controller espanso a un'altra visualizzazione all'interno dell'app del mittente. Il mini controller è un promemoria visibile della trasmissione corrente e fornisce un accesso immediato.

Obbligatorio
A Una barra o un riquadro che mostra i contenuti trasmessi viene visualizzato nella parte inferiore dell'app del mittente. Questi controlli vengono mantenuti mentre l'utente sfoglia altri contenuti o sezioni dell'app.
B I controlli funzionano meglio quando sono semplici e comunicano ciò che viene trasmesso.
  C   Disponibile in tutte le schermate dell'app (tranne la pagina espansa del controller).
  D   Toccando l'area dei contenuti si apre il controller espanso.
  E   Fornisci qualsiasi altro controllo pertinente per un'azione immediata.

Best practice
Per un'esperienza utente ottimale, fornisci i controlli nella finestra di dialogo Trasmetti oltre al mini controller.

Android

Mini controller mittente

Contenuti del ricevitore web in pausa

iOS

Mini controller mittente

Contenuti del ricevitore web in pausa

Chrome

Mini controller mittente

Contenuti del ricevitore web in pausa

 

  Notifica mittente

Obbligatorio (solo Android)
  A   Utilizza l'icona dell'app (non l'icona Cast) per la notifica nella barra di stato.
  B   Identifica quali contenuti vengono trasmessi. Ad esempio, visualizza il titolo dei contenuti o l'artwork.
  C   Identifica quale ricevitore web sta trasmettendo.
  D   Fornire controlli di base dei contenuti.
  E   Specifica una "X" per interrompere la trasmissione e disconnetterti dal ricevitore web, nella riga di azioni.
  F   Toccando il logo dell'app, il titolo dei contenuti o l'artwork dovrebbe aprire il controller espanso dell'app del mittente.

Notes

  • Solo Android: non è possibile implementare le notifiche in iOS o Chrome.
  • In Android Gingerbread (versione 2.3), le notifiche mostrano solo l'icona e il testo dell'app, non vengono riprodotti/messi in pausa o interrotti.
  • Per maggiori informazioni, consulta la sezione relativa all'aggiunta di controlli multimediali alle notifiche.

Android

Icona di notifica del mittente

Ricevitore web che riproduce contenuti

Controlli per le notifiche del mittente

Ricevitore web che riproduce contenuti

 

  Schermata di blocco del mittente

Obbligatorio (solo Android)
  A   Identifica i contenuti trasmessi utilizzando il titolo o l'artwork dei contenuti.
  B   Identifica quale ricevitore web sta trasmettendo. Tieni presente che questa operazione non è necessaria per le app di musica.
  C   Fornisce i controlli di riproduzione.
  D   Consente di accedere al controllo del volume tramite pulsanti hardware.

Obbligatorio per Android 4.4 Lollipop e versioni successive:

  • Icona dell'app
  • Artwork (ad es. copertina di un album)
  • Identificare nel testo i contenuti trasmessi (ad es. "Lacrime d'acciaio")
  • Identifica il ricevitore web che trasmette (ad esempio, "Salotto")

Obbligatorio per Android 4.3 Jelly Bean:

  • Artwork (ad es. copertina di un album)
  • Identificare nel testo i contenuti trasmessi (ad es. "Lacrime d'acciaio")
  • Identifica il ricevitore web che trasmette (ad esempio, "Salotto")

Notes

  • Solo Android: non è possibile implementare le notifiche in iOS o Chrome.
  • I controlli della schermata di blocco sono necessari per Android 4.1 e versioni successive.
  • Sono disponibili controlli diversi per le diverse versioni del sistema operativo Android e la schermata di blocco può contenere solo campi di testo. In genere, la grafica e l'iconografia descrivono i contenuti in modo più immediato rispetto al testo.
  • I pulsanti hardware per il controllo del volume dovrebbero regolare il volume nell'app del mittente quando il telefono è bloccato.
  • Il controllo deve utilizzare il componente del framework: MediaSession o MediaSessionCompat (per le versioni 4.4 e 4.3) o Notification (per 5.0 e versioni successive).

Android

Controlli della schermata di blocco del mittente

Ricevitore web che riproduce contenuti

 

  Il mittente riprende la trasmissione

L'app di un mittente connesso deve ripristinare lo stato di connessione dopo una disconnessione implicita (ad esempio un caduta della rete, l'attivazione della modalità di sospensione del dispositivo o l'esaurimento della batteria).

Obbligatorio
  A   Se l'app del mittente si disconnette implicitamente (l'utente non ha interrotto esplicitamente la trasmissione o la disconnessione), la riproduzione dei contenuti dovrebbe continuare sul web ricevitore. Quando l'app o la connessione vengono riavviate, l'app del mittente dovrebbe ripristinare la connessione al ricevitore web, a condizione che la sessione del ricevitore web sia ancora in corso.
  B   Il pulsante Trasmetti dovrebbe essere riportato allo stato di connessione.
  C   Se l'utente tocca il pulsante Trasmetti prima che il mittente si riconnetta, viene visualizzato l'elenco dei dispositivi web ricevitori. Quando l'utente seleziona il ricevitore web che sta trasmettendo, nell'app del mittente dovrebbe apparire un controller mini o espanso.

Note
L'app Web Ricevir potrebbe anche disconnettersi e arrestarsi a causa di un'interruzione di corrente o di qualche altra interruzione fuori contesto. Questa operazione viene considerata come una fine di una normale sessione, come descritto in Il mittente interrompe la trasmissione.

Android

Selezione dell'app

Ricevitore web che riproduce contenuti

Connessione di trasmissione ripristinata

Ricevitore web che riproduce contenuti

iOS

Selezione dell'app

Ricevitore web che riproduce contenuti

Connessione di trasmissione ripristinata

Ricevitore web che riproduce contenuti

 

  Il mittente interrompe la trasmissione

La riproduzione dei contenuti trasmessi a una TV continua finché un utente non sceglie Interrompi trasmissione o un mittente trasmette qualcosa di nuovo. Quando più mittenti sono connessi allo stesso ricevitore web, ogni app del mittente deve avere un pulsante Disconnetti (anziché un pulsante Interrompi trasmissione) nella finestra di dialogo Trasmetti.

Obbligatorio
  A   Quando più mittenti sono connessi a un ricevitore web, la pressione di Interrompi trasmissione da un'app del mittente non influisce sul ricevitore web e rimuove i controlli di trasmissione e le notifiche dal dispositivo mittente. Gli altri dispositivi mittente connessi restano in contatto grazie ai controlli di trasmissione disponibili.
  B   Quando un'app del mittente si disconnette implicitamente (ad esempio se la batteria del dispositivo del mittente si scarica o la connessione di rete del dispositivo del mittente al web ricevitore cala), l'app non influisce sul ricevitore web e rimuove i controlli di trasmissione e le notifiche dal dispositivo del mittente. L'app del mittente deve tenere traccia delle disconnessioni implicite e tentare di riconnettersi a un ricevitore web quando viene riaperta l'app del mittente.

Android

Finestra di dialogo Trasmetti, pulsante di disconnessione

Ricevitore web che riproduce contenuti

iOS

Finestra di dialogo Trasmetti, pulsante di disconnessione

Ricevitore web che riproduce contenuti

Chrome

Finestra di dialogo Trasmetti, pulsante di disconnessione

Ricevitore web che riproduce contenuti

 

 

Le immagini utilizzate in questa guida alla progettazione sono gentilmente concesse da Blender Foundation e sono condivise dietro copyright o licenza Creative Commons.

  • Il sogno degli elefanti: (c) copyright 2006, Blender Foundation / Paesi Bassi Media Art Institute/ www.elephantsdream.org
  • Sintel: (c) copyright Blender Foundation | www.sintel.org
  • Lacrime d'acciaio: (CC) Blender Foundation | mango.blender.org
  • Big Buck Bunny: (c) copyright 2008, Blender Foundation / www.bigbuckbunny.org