ADAM GLAZIER: Hi, I'm Adam Glazier,
a UX designer on the Google Cast team.
If you're new to Cast, Cast is a way
for people to get content from your app to their TV.
And in this video, I'll show you why
Cast works the way it does so that you
can be informed while designing your app.
Now for the sake of simplicity, the examples
I'll share focus on casting and controlling video.
However, it's worth noting that you can also
cast other types of media, such as music, games, and photos.
Now, when designing for Cast, there
are three main things to consider.
Your app is the remote.
So just like a TV remote, your app
should make it easy for anyone to control a cast at any time.
People need instant control no matter
what state their device is in.
Second, it's a shared experience.
When your app is casting, expect that others are in the room.
Some will be watching.
Some will contribute.
And some will need to take control.
Third is that it's cross platform.
The living room has many devices in it,
and the more devices that can control your cast,
the more seamless it will feel.
Now because casting's a new action,
its usage depends on people being
reminded that it's available.
An easy way to do this is to show a one time cast
introduction screen.
This intro will help users new to casting
and also help experienced users know
that your app is now cast enabled.
So placing the cast icon at the top right
of every screen in your app will allow
users to start and control casts at any time.
And to be clear, the cast icon should always
be visible whenever a cast receiver is available.
Now, once users are ready to cast,
they can do that in two ways.
They can connect to a cast receiver and then play content,
or they can start playing content
and then connect to a receiver.
Either way they start, cast is the mode of the app.
So just like Bluetooth, once you're connected,
whatever you play in the app should cast to the TV.
Now once content starts streaming to the TV,
the phone allows users to browse and control
casts while the TV displays the streaming content.
Now, when designing your TV UI, do not
make it look touchable or simply reuse the tablet UI.
For example, in research I've observed,
people attempted to use the physical TV remote
when the UI on the TV looked interactive.
So with this in mind, when you tap pause on the phone,
it changes to a play icon and the TV shows to pause icon.
This is because the TV's showing the state
and the phone is providing the action.
The second tip is to help the TV UI stay out of the way.
For instance, people will sometimes
pause a video to examine a frame or read text
on the screen like closed captions.
So when someone pauses a video, fade the TV UI away
after five seconds.
Keeping the UI within the lower fourth of the TV
will also help since most of the important content
is typically above that.
The last tip is to provide the ability
to control a cast from every state of your app.
At any given time, the most critical controls for people
are play and pause and volume.
Remember, this is super important,
because your app is the only remote they have.
Now, on Android, there's five places to surface controls.
You can provide a full set of controls in your app
for the content currently playing
and when navigating elsewhere in your app,
provide a persisting controller.
This is commonly a control bar at the bottom of every screen.
Also, provide controls within the cast menu,
because this is where users start and stop casting.
And when users exit your app, make
sure to provide controls and notifications
in the lock screen.
Doing all of these together will ensure the most seamless
experience so that your users can relax and use
their phone however they like.
Now, once something's casting, expect
that more users will want to join in.
So at a minimum, when multiple users are connected,
each user should be able to take control.
An example of this is that if you
left the room while casting, your friend
should be able to take control.
Another possibility is that you started a cast and your friends
want to add to the queue.
So designing your app to work for anyone at any time
will help it feel extra natural.
Now, from time to time, expect that the phone's connection
to a cast may go in and out.
This can happen from the Wi-Fi going out of range,
the phone battery dying, or your app's processes being
stopped by another app.
When this happens, automatically reconnect
users that dropped off whenever they're in your app.
The final step to a cast is disconnecting.
Users can disconnect from the cast menu
and also from a notification in Android.
Now, to prevent users from accidentally stopping a cast,
make sure to only stop the cast when
the last connected user disconnects.
For the complete set of cast UX guidelines,
don't forget to check out the design checklist on the cast
SDK site.
Thanks for watching, and I'll see you next time.