ALEXIS MOUSSINE-POUCHKINE: Hi, everyone.
We're here at Devoxx 2014, and I'm here
with Cyril Mottier, who's a Google Developer
expert in Android.
And we're going to talk specifically
today about Android Wear, because he is actually
giving a talk about Android Wear at this conference.
Welcome.
CYRIL MOTTIER: Welcome.
Thank you.
ALEXIS MOUSSINE-POUCHKINE: So Android,
from the very beginning, has had different form factors
and has, from day one, assumed that people would produce
phones and eventually tablets of different forms and shapes,
and developers had to deal with that.
Now we have Android Wear, which obviously
is a whole lot less real estate, but it's probably not just
a smaller form factor.
Tell us about how it changes things
from a developer perspective.
CYRIL MOTTIER: Well, yes, as you said,
Android Wear is not just a tiny Android.
Actually, it's a tweaked Android that is made for wearables.
And by tweaked, I mean that they completely reinvented the way
that you interact with the device.
This is done mostly by creating a new UI, a new user interface,
where the paradigm is completely different, because you
don't have a grid of apps anymore.
You have a principle of cards, and each card
is actually an information from one application
that you can swipe or have more info about.
ALEXIS MOUSSINE POUCHKINE: Right.
So I think that's really key to understand,
that people shouldn't be just trying
to shrink down an application.
CYRIL MOTTIER: Exactly.
So you have to think completely differently.
And this is done, basically, by starting
a completely new design process.
So drop everything that you've done for the phones
and tablets, and start thinking about something completely new
for a small form factor.
And you also said about shapes and stuff like that.
Actually, there is something which
is quite funny, because we've always
been prepared, as Android developers,
about different form factors, but they were always
square or actually a rectangle screen.
And now we have round screens, which is completely new to us,
but the good thing is it's nice to see that Android adapts
itself quite correctly to that kind of screen.
ALEXIS MOUSSINE-POUCHKINE: Great.
So actually, I think what's important is to find a good use
case for the wearable.
We're not about trying to take any and every application
and take it running there.
So the first obvious use case for which
I understand you don't have much to do
is notifications in general.
So a wearable, or Android Wear, is
paired with a phone or a tablet, so any notification
you get on that device will also be mirrored,
and the developer doesn't need to do anything for that.
Is that correct?
CYRIL MOTTIER: Yeah.
We're working out of a box.
Well, it's a spoiler about my conference
that I will do tomorrow, but basically, there
are three main principles on Android Wear, which
is that your application needs to be glance-able,
it needs to be contextual, and it
needs to require low interaction or no interaction.
And when you think about those principles,
actually, the only thing on the current Android,
on phones and tablets, that fits today's principle
are notifications.
So out of the box, Android Wear is
displaying all of the notifications that are actually
displayed on the phones and tablets.
And those notifications are synced.
So when you swipe away some notification on the wearable,
they are also swiped from the phones, and vice versa.
ALEXIS MOUSSINE-POUCHKINE: That's probably very good.
In terms of using the Notification API from Android,
is there anything special you need to do,
so it looks good on the wearable as well?
CYRIL MOTTIER: Well, as I said, by default,
it works, but it's not quite fancy.
So you can tweak the notification
by using some wearable extender classes, which
are provided as part of the support library.
By doing that, you can have access to some new notification
features that are only available to wearables, such
as you can change the background,
you can have some principle of tags or pages
that are quite nice if you want to--
ALEXIS MOUSSINE-POUCHKINE: Group things together.
CYRIL MOTTIER: --split the information in several cards.
Yeah.
ALEXIS MOUSSINE-POUCHKINE: So eventually, you get to a point
where this is not enough.
You want to get to custom UIs.
You want to build an app that actually runs on the Android
system you have on your wrist.
CYRIL MOTTIER: Yes.
ALEXIS MOUSSINE-POUCHKINE: So that
involves building a full new app, which eventually
is an APK, which needs to make its way to the wearable.
So take us through how hard it is, what it takes to actually--
what kind of APIs do you have available?
What can you do?
And maybe the workflow.
CYRIL MOTTIER: When you start with notification,
you have to go through the custom APK path.
What most people don't know about that is that actually,
Android Wear is just Android.
At the time we're talking, it's KitKat.
So what you're doing for tablets is radically
the same as what you can do on wearables.
So you have access to the exact same set of APIs,
except some packages like USB.
You don't have access to USB, WebKit,
because it makes no sense on a wearable.
But when you're creating an application on Android Wear,
from the technical point of view,
it's exactly the same as what you
can do on phones and tablets.
What you really have to keep in mind
is that it's different from the UX and UI point of view.
This is the only difference between Android Wear
and Android [INAUDIBLE].
ALEXIS MOUSSINE-POUCHKINE: OK, I have another difference.
The wearable is not really connected.
Or it's connected to the phones, so there's the data--
CYRIL MOTTIER: Not yet, but maybe it will in the future.
And that's a good point of using Android
in Android Wear, because actually, Android
is future-proof.
I don't know when the technology will evolve
and when wearables will have access to the network.
Then it will already be ready.
We will have almost nothing to do, because it's just Android.
ALEXIS MOUSSINE POUCHKINE: Right.
So roll back to today, to what we have and developers
have today.
They need to use the data layer APIs to exchange data
and access the internet, for example.
So how does that work?
The watch cannot make a call to the internet directly.
It goes through the phone for anything it has to do.
CYRIL MOTTIER: Yeah.
So nowadays, what we have is a wearable
that is connected to the phone.
Both phones and wearables are considered
as nodes in a network.
And because the phone has more capabilities than the wearable,
it acts like a sever to the wearable.
So whenever you want to have access
to some data on the internet, you
have to make the wearable connect to the phone
to send and ask for information to the phone.
And then the phone will ask to the network, so for instance,
server on your back end.
All of that is done thanks to an API that is called Data API.
But actually, there is two other APIs.
But most of the time, you are using Data APIs,
because it's an API that syncs some data between the phone
and the wearable automatically thanks to Google Play Services.
This runs on top of Google Play Services.
ALEXIS MOUSSINE POUCHKINE: That's a very good point.
Google Play Services plays this really critical role
and embeds most of the magic that happens.
CYRIL MOTTIER: It can be updated automatically
without having to wait for a system update, which
is quite nice, because if there are some fixes to do,
Google can push that automatically
without asking carriers.
ALEXIS MOUSSINE-POUCHKINE: So that
was a quick, abstract view of everything,
but you have been doing some really concrete work
on an application, actually, shipping it,
and having people use it.
Tell us about that experience.
What is it, and what does it do, and maybe some lessons learned.
CYRIL MOTTIER: I've been working on an application called
Capitaine Train, which is a company that
sells train tickets.
But what we want to do is not just sell train tickets.
What we want to do is to revolutionize the way
that people experience the train.
And that means that we also want to improve
the overall experience in the train.
One of the things that we have to do in France
is to make the train agent, train controller check
a barcode, because this barcode contains your actual ticket.
ALEXIS MOUSSINE-POUCHKINE: Your e-ticket, yeah.
CYRIL MOTTIER: So because of that,
we already had a phone application
that was displaying the barcode.
It was nice.
But when Android was released, I was
like, we need to do that on the wearable,
because it's even more usable and easy to do.
You don't have to get your phone out of your pocket or the bag.
ALEXIS MOUSSINE POUCHKINE: Unlock it.
CYRIL MOTTIER: You just have to look at your wrist,
and present your wrist to the train agent, and that's it.
ALEXIS MOUSSINE POUCHKINE: Yeah.
You get the notification, you know, where you're sitting.
And then when the controller shows up--
CYRIL MOTTIER: There is actually two parts--
the part prior to the trip and then the part during the trip.
So yeah, you're right.
There is also the part prior to the trip
where you can have access to all of the information,
such as your carriage, your seat, and stuff
like that, what time the train is leaving.
And then you have the barcode that you
can present during the trip.
So at the beginning when I wanted to do that,
I wanted to stay to the line and use notifications.
But actually, we have one big problem
with a barcode like that is that we need to keep the screen on,
because you don't want the wearable
to turn off while you're presenting the barcode.
And we also need to--
ALEXIS MOUSSINE POUCHKINE: And it
needs to be full brightness, too.
CYRIL MOTTIER: Yeah, full brightness.
Because of that, we have to go through the system APK path.
Developing for Android Wear was quite nice, quite challenging,
because as I said, it's very similar to what we can do on--
ALEXIS MOUSSINE-POUCHKINE: It's new.
It has rough edges.
It's got to have them.
CYRIL MOTTIER: Of course.
It's Android.
It's not that new, but actually, what's
new was the communication between the phone
and the wearable.
And I spent quite a lot of time--
ALEXIS MOUSSINE-POUCHKINE: Understanding exactly what
was going on.
CYRIL MOTTIER: --understanding exactly what it does.
ALEXIS MOUSSINE-POUCHKINE: Maybe a little bit of magic going on.
CYRIL MOTTIER: I think maybe the problem is I always
try to deep-dive into things and try
to understand exactly how it works.
Maybe it's OK for people that just want to do something
and don't care about how it works.
So basically, this application is automatically
displaying the notification when it's important to the user.
What we wanted to do is something that--
ALEXIS MOUSSINE-POUCHKINE: It's contextual, really.
CYRIL MOTTIER: Yeah.
It's contextual.
We didn't want to have an application kit
that you have to start when you're in the railway station.
So it's automatic.
It works like magic, and this is what Android Wear is.
It's just displaying just the right info
at just the right time.
ALEXIS MOUSSINE POUCHKINE: Right.
It seems to fit very well with what wearables should be.
And that has been out.
People have been using it.
CYRIL MOTTIER: Yes.
ALEXIS MOUSSINE-POUCHKINE: Some good or bad feedback?
People actually using it.
That in itself is a good feedback, I guess.
CYRIL MOTTIER: Well, there is not
a lot of people having an Android Wear
device on their wrist.
ALEXIS MOUSSINE POUCHKINE: It's still pretty new.
CYRIL MOTTIER: But the people having an Android Wear device
are amazed, because it's--
ALEXIS MOUSSINE-POUCHKINE: It's this magical moment.
CYRIL MOTTIER: --quite geeky for now,
but it's magical, because it just shows at the right moment,
and you can present that to the train agent.
I think the most amazed people were actually the train agents,
because they were like, what is that?
They were so proud to scan my wrist like that.
ALEXIS MOUSSINE POUCHKINE: And I'm
pretty sure you had some fun, too,
doing that when it was not even released
and they were the first ones.
CYRIL MOTTIER: Yeah, especially during the beta phase,
because I was the only one having this application.
And the controller-- well, I have never seen that.
ALEXIS MOUSSINE POUCHKINE: It was pretty easy for them, too,
right?
They too don't have to wait for somebody to pull out.
So it's quicker and faster for them as well.
CYRIL MOTTIER: Exactly.
So it just works.
ALEXIS MOUSSINE-POUCHKINE: So I guess we had a quick tour here.
Maybe I have one last, final question.
What kind of watch do you wear?
CYRIL MOTTIER: So I have the LG one.
ALEXIS MOUSSINE-POUCHKINE: OK.
Tell me more about why you have this one more than another one.
CYRIL MOTTIER: Well, I actually have the Samsung one and also
the Moto 360, but I decided to switch back to the LG one
after using the Moto 360 for three weeks,
because I think the Moto 360 is nice.
It's good-looking.
It's better than a square screen like that.
But I think it's too big.
And the second problem I have with that is that I'm a runner.
And when I run with a leather bracelet, I sweat a lot,
and I don't like to have the wet bracelet like that.
And because this one is in plastic,
I don't have that kind of problem.
ALEXIS MOUSSINE-POUCHKINE: You can change straps.
CYRIL MOTTIER: I can change, but actually, I
would like to change between when I'm at work
and when I'm running.
I would like to have two different bracelets.
And this is not currently possible with Android Wear.
I hope it will be in the future.
ALEXIS MOUSSINE-POUCHKINE: Well, we already
have different form factors, different manufactures,
different everything, which is the idea of having one Android
Wear but different implementations,
different devices.
CYRIL MOTTIER: Exactly.
I've tested the application, for instance, on the three devices,
and it was working correctly.
This is where Android excels.
It works everywhere.
ALEXIS MOUSSINE-POUCHKINE: Great.
So on that note, I think that's all the time we have for you.
Thank you, Cyril, for taking the time.
And go get some Wear apps.
Develop them, use them, give us some feedback.
Cheers.