Tip:
Highlight text to annotate it
X
[MUSIC PLAYING]
GUS CLASS: Hello, and welcome to the
Google+ Developers Live.
My name is Gus Class.
I'm a developer advocate on Google+.
And with me here today is Cartland.
CHRIS CARTLAND: Hi.
My name is Chris Cartland, and I'm a
developer programs engineer.
GUS CLASS: And also joining us by a Hangout is a special
guest, Evan from TuneIn.
EVAN OWSKI: I'm Evan Owski.
I am a software engineer for TuneIn.
GUS CLASS: So today, we're very excited to talk about
Over-The-Air Installs.
And this is a really exciting feature because, for users, it
lets you install with one click right after you sign up
for a website.
And for developers, it essentially lets you get free
Android installs, because users are immediately
converted after sign-up.
So it's most clearly demonstrated when
you see it in action.
So Cartland's going to show it to you today, and we'll talk
about how to implement it.
CHRIS CARTLAND: Excellent.
So I'm over here on tunein.com, and as a user
who's signed into Google, I want to sign
up with this website.
And when I go to Sign Up, you'll see that they have a
couple options, and the top one here is
Sign in with Google.
I trust Google to handle my identity, and I want to use
this website, so I am going to choose Sign in with Google.
I get the normal dialogue that we talked about
on last week's GDL.
And the important thing is that when I click Accept, I'm
going to be signed into the app, but I'm also going to be
prompted to see a dialogue that says "would you also like
to install the Android app on your phone?" And this is
really cool because I didn't even know there was an app,
and I can already install it with just one click.
So I'm done.
As a user, this is great, as Gus said, because I can get an
app without searching through a phone.
I don't have to find it in the Play Store.
It's already on my device right now.
I can see the icon, and I can start using TuneIn in both
platforms without any effort.
GUS CLASS: So again, you just signed up for the website, and
then at the conclusion of sign up, you're asked which device
you'd like to push that app to, and then, boom.
It's right there.
CHRIS CARTLAND: That's it.
It's really easy.
Now Evan, did you have a similar experience when you
first saw that we had Over-The-Air Installs?
Did you think that was a cool idea?
EVAN OWSKI: Yeah, I think OTA Install was probably the
easiest feature to get to work.
Pretty much we dropped a data attribute on our Sign-in
button, and it just worked.
CHRIS CARTLAND: Awesome.
EVAN OWSKI: Spent about a minute implementing it and 30
minutes testing it, so--
CHRIS CARTLAND: Awesome.
EVAN OWSKI: Fantastic.
CHRIS CARTLAND: That's really cool.
Speaking of the implementation, I can show
through all those steps right now.
It's going to be really fast, and we're going to see how
easy it is to get Over-The-Air Installs to work.
GUS CLASS: Now, Chris, you did that so fast earlier.
I bet our viewers didn't even get to see the app
on the Nexus 10.
So can we show that one more time, just to show people
where that is and maybe kind of walk that
through a little slower?
CHRIS CARTLAND: Oh, sure.
So on our Nexus 10 right here, the icon has already appeared
on the desktop.
So this is literally the first time I've touched the device
after I clicked Sign in on the Web.
And the TuneIn app is already available.
I can start looking at the different radio stations and
do everything else that I would with the app.
And again, I skipped all of the steps that were in the
Play Store, and everything that I
wanted was already here.
GUS CLASS: It happened so fast and transparently that it's
really difficult just to see it happen because you sign up,
you click Install with the device you've selected, and
then it's on that device.
CHRIS CARTLAND: Excellent.
So again, similarly, we're going to show how fast it is
to get this to actually work.
So on my computer I'm looking at the APIs Console, which is
where you do all of your regular configuration for
Google APIs.
What you're going to do is make sure that you create a
client ID for Android using the same project that your web
application is using.
So we just choose Installed Application and
fill out two fields.
One of them is your Android's app package name, which just
identifies, of course, what your application is-- the one
that we want to install.
And then the second thing you need to fill out is the SHA1,
which all you Android developers know, you can use
the keystore to come up with the SHA1.
And then you say, Create client ID.
And then your configuration is done on the web.
GUS CLASS: So again, so this configuration here-- the
screen that you're showing--
these are the settings that are pulled from
Android for your app.
And then the next thing you're going to show is going to be--
CHRIS CARTLAND: How to actually make the button do
the Over-The-Air Install.
GUS CLASS: OK.
Awesome.
CHRIS CARTLAND: Great.
So once your Android device is set up like we've just shown
on the web, all we have to add is one field, and that's the
app package name.
So if you're using the Sign-in button markup, there's this
field called data-apppackagename, and it
says, com.google.andro id.gms.sample.plus, or
whatever TuneIn's app would be.
And that's it.
Once you put that on your page--
as Evan said, that took about a minute.
What else would you like to add about that, Evan?
GUS CLASS: Yeah, great.
Actually, let's hear a little bit more about TuneIn's
integration with Google+.
EVAN OWSKI: Sure.
First, let me introduce the company.
So TuneIn is the world's radio.
We have 40 million monthly, active listeners.
You can listen to 70,000 live stations from all over the
world, and two million pieces of on-demand content.
So you should definitely check us out at tunein.com, and
while you're at it, hit Sign in with Google and grab our
Android app.
So let me go over some of the ins and outs of what we did
for our integration.
So I did the web integration, and my colleague, Cliff did
the Android.
So I'll focus on web.
It was about, I would say, a two, two and a half week
process to get everything going.
So we did Sign-in and Sign-up integration.
We did Share.
We did Moments, so if you're signed in to your Google
account, it broadcasts these moments.
So Evan Owski is listening to Laid Back Radio right now.
And it's kind of a cool way of letting your friends know what
you're up to, listening to on TuneIn.
GUS CLASS: Cool.
So you guys are taking advantage of the app activity
functionality.
And so then as someone listens to radio, it kind of
continuously writes the things that they're doing.
EVAN OWSKI: Right.
Right.
So if they tune in to a new station, if they tune in to a
new program, if they Favorite something, that all gets
posted in their Moments stream.
CHRIS CARTLAND: Awesome.
EVAN OWSKI: And, of course, if they don't want that they can
always disable it.
CHRIS CARTLAND: Right.
And one of things that Google+ Sign-in allows you to do is
give the user control over who can actually see those app
activities.
EVAN OWSKI: Right.
CHRIS CARTLAND: So they're not necessarily broadcast to
people that they don't want.
They are only given to exactly who the user
says should see them.
Cool.
EVAN OWSKI: Right.
CHRIS CARTLAND: Excellent.
GUS CLASS: Awesome.
Sorry, we totally interrupted you.
Were you guys doing some work also with interactive posts?
Because they also kind of go hand-in-hand with those sorts
of things, like, I'm listening to this now.
Come and listen to what I'm listening to, too.
EVAN OWSKI: Yeah, we did implement Interactive Post as
well, and that was maybe second to like OTA Install,
probably the easiest feature to implement.
We had some existing metadata on our station and program
pages, and Google was able to pull that information down and
interpret it correctly.
We really didn't have to do any additional work to take
advantage of that metadata, so that when you click the Share
button, Share on Google+, you had all the correct title and
description of the page and an icon as well.
GUS CLASS: That's awesome.
So you're able to pre-populate, set all the
things that you want to appear in that interactive post, and
then the users can selectively render it to their stream.
That's cool.
So what do you think was one of the most exciting things
that has happened as a result of Google+
Sign-in for you guys?
Do you look forward to getting deeper functionality from this
and additional things you have that couldn't make it in for
the launch?
EVAN OWSKI: Yeah, there were a few features that we were
definitely thinking about including.
One of the features that we ended up implementing on web
was the calendar integration, which is awesome because
TuneIn has a ton of live content, and we have schedules
for a lot of our stations.
And so if you want to listen to say "Morning Edition" or
even a sporting event-- we've got March Madness coming up--
and you want to set a reminder to yourself to listen to it,
you can just add that to your calendar right from our
Android app.
And that's something we don't yet have on web.
GUS CLASS: That's cool.
EVAN OWSKI: But yeah, we're very excited about Sign-on,
because almost everyone who comes to our site, a lot of
our users, are going to be signed in already with Google,
and we like to get them to sign up so that they can get
some of our better features like Favorites.
And it just removes that extra step of
having to type in email.
And I know when I go to a new site, I'm pretty lazy, and I
don't like to have to type in a lot of stuff to sign up for
an account, so it just makes it that much easier.
GUS CLASS: Yep, and additionally, like on mobile,
there's nothing worse than trying to enter your password
with those little keys, right?
EVAN OWSKI: Oh yeah.
Totally.
CHRIS CARTLAND: Yeah, so what did you think about Google as
a position to help your integration?
Do you think anything we had was particularly special that
made it great for your application?
EVAN OWSKI: So we were part of the launch, and so we worked
pretty closely with the Google+ team,
and they were great--
very responsive to our questions.
I think at the beginning there was a little bit of a scarcity
of-- some of the documentation was a bit scattered.
But we saw, sort of as the process went along, the
documentation got a lot better, got more filled in.
And so I think some of the difficulties that we might
have had early on when other companies come in, when other
projects come in and they do this kind of integration, I
think it's going to be a lot smoother for them.
And they'll be able to just jump right in, use the
documentation.
It will be pretty much out of the box.
GUS CLASS: Yeah, awesome.
And do you have any advice for third-party developers who are
kind of like you guys, who had to get-- you know, you got
early access to it and a little bit more handholding--
any kind of tricks or recommendations, ways that
guys that are kind of starting out with this
can save some time?
EVAN OWSKI: Yeah, I would say definitely
grab the sample app.
The sample app was really helpful, and a lot of the
examples you can just drop pretty much copy, paste
verbatim, and they just work.
GUS CLASS: So did you guys start with the quick-start, or
did you start with a PhotoHunt?
EVAN OWSKI: What was the second one?
GUS CLASS: There's PhotoHunt, which is sort of a showcase
app that shows an actual full integration like with the
Over-The-Air Installs and it's got an Android and iOS app and
also a web server.
If you guys didn't start with--
EVAN OWSKI: Oh, I don't think we even knew about PhotoHunt.
GUS CLASS: Oh, awesome.
That is the new, new then.
So you found the quick-start samples to be real helpful,
and they're available for all the languages that most
developers use, which is handy.
Cool.
Trying to think what else.
CHRIS CARTLAND: Do you have any questions from people
online that we can get to?
GUS CLASS: Sure.
The first question that we're seeing is, some people have
expressed concerns that Over-The-Air Installs are
hardware dependent.
And Cartland, do you want to take this one?
CHRIS CARTLAND: Yeah, so the Over-The-Air Installs will
work on any phone with Android--
what's the number--
2.3 or higher.
It's Gingerbread.
So as long as you have that and you have the Google Play
Store installed, then it'll work,
which is a lot of devices.
GUS CLASS: Yeah, so there's a whole lot of Android devices
out there, and yeah, the hardware dependence is just
kind of-- there's a minimum version of Android.
So long as your device supports that minimum version,
then you are good to go for these Over-The-Air Installs.
Another question is, does anyone know if the Auth Token
from the Sign-in service can be used for any other OAuth
2.0 methods Google services, for instance spreadsheets?
And actually Evan can speak to this, because they did
calendar integration in addition to Google+ Sign-in
integration.
Do you want to talk a little bit about kind of the extra
leg work that you guys had to do to enable that
functionality?
EVAN OWSKI: So I can't speak to calendar integration too
much, because we didn't do that on web, and Cliff would
be a better person to answer that question for mobile since
he did that side of it.
GUS CLASS: Yeah, sure.
I can actually jump in here and talk to this.
So there's only two things that you have to do.
You need to turn on the services for the additional
functionality that you need.
And then the next thing you need to do is just request the
right scopes.
When the user clicks the Sign-in button, they'll be
shown all the scopes that you're requesting, and they
can control which of them they will allow access to.
So another question is--
no more questions.
So we actually don't have anything new to
announce this week.
But we do want to say that it's really exciting to be
back on to Google Developers Live, and we look forward a
lot to additional shows talking
about the Google+ platform.
CHRIS CARTLAND: And thank you so much to TuneIn and Evan for
joining us today.
We had a really great time talking with you.
EVAN OWSKI: Yeah, it's great to be here.
CHRIS CARTLAND: Yep.
Well, thanks for watching.
[MUSIC PLAYING]