Tip:
Highlight text to annotate it
X
SPARKY RHODE: Again, it's Wednesday
afternoon here in Europe.
And it's time for the Android Developers Office Hours.
I'm Sparky in Munich, Germany I'm joined by Rich and Matt in
London, UK.
Rich and--
RICH: [LAUGH]
SPARKY RHODE: Nick.
I'm sorry.
NICK BUTCHER: No Matt this week.
Matt's off in Amsterdam, I think it.
RICH: Yeah, J-something conference.
I do have a conference in Holland.
SPARKY RHODE: Matt in a really, really
convincing Nick costume.
RICH: [LAUGH]
very good.
Hi there from England as well and welcome to this week's
office hours.
As usual, we won't be talking about anything that's not
previously been announced, but fortunately--
NICK BUTCHER: Things that have been announced!
SPARKY RHODE: [CHEER]
RICH: Finally.
We almost pre-announced it two weeks ago when this started
ringing in my pocket.
NICK BUTCHER: [LAUGH]
It's like oh no, no, no, no.
Let's not do that.
But we didn't.
And now we are free to talk about some of the awesome new
Android devices that are available on the Play Store.
SPARKY RHODE: But since you are all developers, you'd much
rather talk about developing and writing apps than the new
devices, right?
RICH: Well, I'm glad you said that, Sparky, because there's
some amazing new APIs as well in Android 4.2.
I hope that we'll be able to touch on those over the next
hour as well.
Welcome to all the people to join us in the Hangout live.
Good to see some familiar faces, and some new ones, and
Jelly Bean, a piece of art.
I guess we should get started.
Does anyone in the Hangout have any
questions for us today?
AL SUTTON: My one's kind of a big can of worms.
How's multi-user handled with respect to external storage?
RICH: OK, so first of all, Al, congratulations on a changing
your lower third.
I see that you're a member of Ouya, the Kickstarter Android
console gaming awesomeness that hopefully we will all be
using soon.
Multi-user--
[INAUDIBLE] straight into one of the new
features of Android 4.2.
On the Nexus 10, it comes with multi-user support.
We have.
I do have multi-user on here at the moment, I can switch
between two of my profiles.
Regarding external storage?
AL SUTTON: Yeah a lot of people have been using it just
basically as a temporary dump area for large files.
And a lot of applications I've seen do that.
What happens if you've got the same application that's
running under two different users?
Is the application going to see the same area for those
two users, and hence--
NICK BUTCHER: No, each user will see a
different view of the data.
So if you [? ask for ?] get external storage, it'll
actually get returned [INAUDIBLE].
AL SUTTON: Cool, cool.
So we've got user separation at that level.
NICK BUTCHER: I believe that the hard coded string/SD card
has been grandfathered in as well.
So if you were doing it wrong, like please don't do that, but
I think we've catered for that as well.
RICH: But at the same time, each app will only be
installed on some device.
So if you do install an application and then another
user goes to install it, it will just
instantly be installed.
So you don't have to duplicate all actual application and
app's data.
It's just the user specific data that will go into their
our own private area.
NICK BUTCHER: Yeah, from a developer point of view, it
should be transparent to you, like, you shouldn't have to
write any special code for handling multiple users.
AL SUTTON: Cool, so when you've got two users, will
each user see the applications the other one's installed?
RICH: No.
You get to go and install the application.
If it is already installed, it will just enable it for you,
but you don't get to see what the person has installed, no.
SPARKY RHODE: Cool, thanks.
I appreciate that.
I remember, back in the day, we had semi proprietary fork
of Eclipse that could only be installed per user on Windows
NT, Windows 32, NT, XP, whatever.
And man, installing Eclipse separately for every user
account that you wanted it on--
ouch.
I'm glad we don't have to do that.
RICH: OK, anything else so I have and welcome to whoever
just joined us.
I heard a ping.
No?
NICK BUTCHER: Everyone catch the announcements this week
about Android 4.2 and the Nexus 4, Nexus 10?
SPARKY RHODE: [INAUDIBLE]
NICK BUTCHER: [LAUGH]
Anyone planning on picking one up?
Yeah.
RICH: Just nods generally across the
bottom of the Hangout.
They're like yeah, I'll pick one up.
Price points are very, very competitive, I've got to say.
AL SUTTON: And the resolution on the 10 seems incredible.
Is it really noticeably crisper than
other 10 inch tablets?
NICK BUTCHER: Text rendering, for me, is beautiful.
SPARKY RHODE: My favorite example is, I bring up a
reader app, like, for instance, "The Economist," and
I pull up the exact same article on the Nexus 10 and
one of the older generation, like a Zune or a Galaxy tab.
And just look at the rendering of the article on those two
tablets side by side, and you'll be convinced.
NICK BUTCHER: Yeah.
RICH: I mean, we're almost up to print ppi's now.
It's incredible.
NICK BUTCHER: If you look at Roman [? Gi's ?]
latest post, I think, at the moment, he's got a photo of
the corner of the screen.
And you wouldn't believe that it's not
superimposed image on top.
It's just phenomenal.
And yeah, it's that good.
AL SUTTON: OK, that's one sale made.
[LAUGH]
AL SUTTON: Another quick question--
do you know anything about the 4.2 running
on the Nexus 7 itself.
Is there a 3G version being made?
RICH: Hold on a second.
There are just jump on a mute here.
Go on, just say that again please, Al?
AL SUTTON: The 3G version of the Nexus 7 was announced.
I don't know if you guys have had a chance to play with it,
but is it in the territory where you get
multi-user on it?
Or is it considered a non-tablet device, and you
don't get multi-user.
SPARKY RHODE: I think it's not running multi-user right now.
RICH: The only device I know of that's got multi-user at
the moment is the Nexus 10.
I haven't seen it on the Nexus 7, but it's a good question.
I will try and resolve that for you.
AL SUTTON: Thanks.
RICH: In the chat window down the side, Patrick has-- oh no,
someone before that.
Francisco, "What do you think about the battery life of the
Nexus 10 and the Nexus 4?
Thanks." Taking those separately, Nexus 10 has got
an insanely long standby life.
NICK BUTCHER: I think you leave it for three months on
standby, someone told me once.
RICH: Someone did mention that.
NICK BUTCHER: I don't know if they've tested that.
I definitely haven't done that [? one. ?]
But based on the draw and the capacity--
RICH: Yes.
Generally, have very, very, good battery lives, very large
batteries in them, and good power efficiency from the
chips we're seeing.
And then Nexus 4 we've both been using as our main phones
for a while now, and--
NICK BUTCHER: We're not at DroidCon.
RICH: We're not at DroidCon.
Bigger batteries than all the previous Nexus handset
devices, and more efficient operating system, has made,
for me, a device that easily gets through a day.
But we'll just have to see, when you pick yours up, what
you think about them.
NICK BUTCHER: And silly things, like the inductive
charging is amazing.
So I have an inductive charger on my desk and
on my bedside table.
And so every time I sit down, I just put the phone down, and
it's charging.
So it stays charged because it's so easy.
I don't have to think about plugging it in and or
unplugging it when I get up, I just put it
down, and pick it up.
AL SUTTON: Does the 10 have inductive charging as well?
NICK BUTCHER: No.
AL SUTTON: Only the 4.
NICK BUTCHER: Just the four.
RICH: So mine's currently set at 82% full after 6 hours and
14 minutes without any charge.
Not that you can see that, but it's doing
very well right now.
SPARKY RHODE: I mean, really the make or break is whether
it gets through a day, right?
RICH: Yeah.
NICK BUTCHER: Yeah.
RICH: I haven't had that problem with it yet.
I was concerned about switching to a device that
doesn't have a removable battery, but the tradeoff
being that it has a bigger battery inside it.
And of course, it has inductive charging coils
somewhere in the back.
I can switch in between the back and the battery.
And I've been happy with it.
NICK BUTCHER: I love mine.
RICH: No issues, yeah, I love mine too.
AUDIENCE: What's the inductive charging like?
Is it just as quick, well, obviously, it won't be as
quick, but is it still pretty speedy compared a cable?
NICK BUTCHER: I don't really know.
Yeah, I think so.
I tend to leave it put down overnight, and it's charged.
Yeah, I don't know, if you were just going to put it down
for an hour, would it do a full battery
charge, I'm not sure.
RICH: I really want someone to bring a really nice range of
furniture with inductive charging built into it.
Coffee tables with little inductive charging points in
the colors and things, that you can just, you don't have
to have these wires around.
AL SUTTON: Nokia did a pillow for their Lumia
for inductive charging.
And you kind of sit there and think, like, what would you do
carrying this phone around on pillow.
It looks like something from the royal household, yeah.
RICH: So yeah, the other thing is, the games on the Nexus 10
look amazing.
Oh, that's great.
I saw the EA games "Mass Effect Infiltrator" and "Need
for Speed: Most Wanted," just look inside at 2500.
And the scary thing is, when you use the HDMI out, or
wireless display, it has to scale down for a full HDTV.
Scale it down to 1080p.
So it's absolutely flying as well, very good
frame rates on it.
NICK BUTCHER: Yeah, I've got a massive 30 inch monitor at my
desk, and it's got the same resolution as that--
RICH: 10 inch tablet.
NICK BUTCHER: On a 10 inch tablet.
RICH: The A15 chip cooks.
Not in a hot way.
NICK BUTCHER: Love it.
RICH: Yeah.
OK, let's do some development questions, unless there's one
more in the--
NICK BUTCHER: Yeah, in the sidebar.
Patrick, I'm pronouncing it right, a question about screen
sharing in 4.2.
"Will it require some kind of device in between?" So yeah,
it's based on Miracast.
Is the wireless screen sharing, I guess that's what
you're talking about.
So if your TV supports Miracast, which I'm not sure
if there are any out there now, but I here it's an
emerging standard of which people are going to adopt,
then the answer would be no.
Until then, I believe there's a range of dongles either on
the market now or coming out which you can use to retrofit
that Miracast support into your existing TV.
So yeah, right now the answer is, probably most people will
have to buy some kind of dongle to do that.
But in the future, hopefully no
additional devices required.
RICH: Yeah, you mentioned standards like DLNA, but
usually they just do media streaming, sharing videos and
audio, they won't allow entire desktop
sharing off of the device.
Whereas this is, you can do mirroring, or you can send a
separate stream to the second screen.
Now in Android 4.2, with the second screen APIs, you get
notified when a second screen's plugged in connected,
and you can send a completely separate set of
views to that screen.
NICK BUTCHER: Yeah, and the cool thing is that DLNA piggy
backs on a network, whereas Miracast, I believe, is built
on top of the Wi-Fi, so you can have a direct connection
between, say, your TV and your device without having to have
another Wi-Fi access point in between,
which is kind of cool.
SPARKY RHODE: Ah, I see Pavel has asked us an actual
programming question.
"What is the density, screen size bucket or N10, and will
we see more buckets introduced in the near future?" Correct
me if I'm wrong--
I believe it will be an extra large XHDPI, is that right?
Correct.
And as of API level 16, there exists a constant for XXHDPI,
but we haven't really done a lot with it.
NICK BUTCHER: So I heard a post on Google+ yesterday,
which some people might've seen, saying that yes, the
tablet is an x-large XHDPI screen.
But launcher tablet devices picks a launcher icon for your
app from one density bucket up, so that it can render it
slightly larger and see a larger icon
and on the home screen.
So for that reason, yeah, you need to provide an XXHDPI icon
in order to get a really beautifull crisp icon.
AL SUTTON: I got a kind of development question.
It's one that you might not be able to answer, so do you know
when the 4.2 SDK is going to be available?
NICK BUTCHER: Generally, historically, it tends to get
shipped when we launch a device, or open source, or
erase the factory image.
So historically, that's what's happened.
So when that happens, I guess.
But I don't have a date.
RICH: OK, yes you'll see XXHDPI.
NICK BUTCHER: Where will it end?
SPARKY RHODE: I believe that's nominally 480
dpi, is that right?
480, yeah.
That's nothing.
Actually XX is just a redirect for a number.
I think it gets even turned into 480 dpi by our APTT.
By our APT.
So you can actually just use drawable-480 dpi.
Rather, than drawable expectations.
There's nothing like being prepared for the future.
NICK BUTCHER: Yeah, although, a couple of benefits, it's
like, where is it going to end if you keep on adding X's.
It's kind of silly.
But the other thing is also, make sure
resources, nice and ordered.
In a clutch.
RICH: Does anyone what the dpi of the HTC was?
SPARKY RHODE: The actual, I think, was more 440.
RICH: OK, so it's still not quite 480.
But that said, I mean, these are all
kind of elastic ranges.
So it may very well be that something with an actual
density of 440 might sort into 480 bucket anyway.
And it might be an XX.
NICK BUTCHER: Sure.
RICH: Right on.
One of the other nice features of 4.2 is, when you're
developing for multiple screens, you can put a virtual
second screen on your device and see what we it will render
like inside your application.
So in the developer settings, there's now a new setting,
which I'll bring up, in the developer options for--
NICK BUTCHER: Yeah, this is one of the APIs I'm really
excited about, actually having an actually API to draw things
separately to a secondary screen.
So you can have your game controllers on your phone, and
the game output up on your big TV.
RICH: You can't really see it, but you can simulate a second
screen here on the side of your screen.
And the second screen would be what appears onto the TV set
or the other screen that you connect it to.
NICK BUTCHER: Yeah, so you can develop against that without
having to have second screens and stuff.
SPARKY RHODE: So now how long do we have wait for Nexus DS?
RICH: [LAUGH]
What's that?
I don't get it, Sparky.
NICK BUTCHER: Dual screen.
RICH: Oh, is that what DS stood for in the Nintendo.
I never knew that.
SPARKY RHODE: Yeah.
[LAUGH]
RICH: Go figure.
OK, so should we hit the Moderator and get on with some
of the questions for this week?
NICK BUTCHER: Unless-- we've got a few new joiners.
Any other questions from people in the Hangout?
YOSSI ELKRIEF: Can you hear me now?
NICK BUTCHER: Yeah.
RICH: Yeah hey, Yossi.
YOSSI ELKRIEF: I had a few questions.
First of all, I wanted to try something with the Google
Calendar, maybe do something very, very simple, but without
showing an intent to the user, and basically schedule an
appointment into the calendar.
I know it's possible.
I saw some code.
But is it considered a good convention, or I must show the
user the exact appointment I'm scheduling?
NICK BUTCHER: It depends, really.
Like if you have a screen, basically, showing the same
information that would go into the create event screen, then
I think it's fine to just have that within your UI, and have
that add to [? calendar ?]
[? or just ?]
[INAUDIBLE].
If you're just basically recreating what the calendar
UI shows, then I would probably say
just use the intent.
YOSSI ELKRIEF: The basic idea was to just use the calendar
as a sort of time stamp for actions you do, like, went to
the market, 10:15, answer the phone, 10:20, and
so on, and so on--
just use it as a time stamp for all events you want to
record on your--
NICK BUTCHER: Yeah, so you probably would
create your own calendar.
So you probably wouldn't want to write those into the user's
kind of like Google [INAUDIBLE], or whatever, you
want to create your own [INAUDIBLE]
or whatever calendar.
And then create your events in that so then the user can
wholesale, turn that calendar on and off and hide and show
those events.
I think it probably sounds like a good solution.
There's actually a great article on Rockin' Android, if
you know that blog.
By Wolfram, yeah, he's just been doing a couple of posts
lately about working with the calendar.
So I encourage you to check those out.
RICH: And I actually had an example right, when you pinned
an item from the conference to fit it into
your calendar as well.
Yeah, there's a sample code in the Goolge I/O app as well.
YOSSI ELKRIEF: OK, I'll check it, thanks.
RICH: I just wonder what you guys thought of the photo
sphere that you've been seeing on Google+.
Did you see Hugo's video on how to create a Photosphere
from outside building 44?
AUDIENCE: I saw yours.
You put two up, didn't you?
RICH: Yeah, I did a couple more last night as well, but I
haven't posted them yet.
I might do one from this Hangout, so you can get to see
everything in the room.
And then--
[LAUGHTER]
RICH: [INAUDIBLE]
what are we both looking out--
there'd be a big blank thing.
It's a good point.
I could do one--
NICK BUTCHER: Censored.
RICH: Oh no, I could just do a 2/3 photosphere.
That's a photo hemisphere?
OK, I'm just looking through the what's new for Android
4.2, and of course photospheres is
right at the top.
SPARKY RHODE: So you guys know that the right way to make
photosphere is not to turn your body around, right?
If you do sort of swivel your body around and move the phone
in a cylinder, you're going to get parallax effects that make
for bad stitching.
If you want it to stitch properly, you need to actually
pivot the camera around the focal point of the lens.
RICH: But then you're going to get your own face in it.
[INAUDIBLE] head.
SPARKY RHODE: Right.
RICH: Well, I don't know.
Honestly I think it's good to depend on how far away the
thing is that you're making the photosphere of.
So the ones I've taken from very large buildings and
outside don't seem to have a problem, I guess.
But the ones I've taken in the office maybe have
more of that from--
you have to be slight more careful taking it.
SPARKY RHODE: That's exactly right.
The parallax is way worse on nearby objects.
RICH: Yes, exactly.
OK, can we move to the moderator now?
Excellent.
SPARKY RHODE: I have not had as much time to go through the
Moderator this week as I usually do.
Fortunately, some of the other readers have done it for me.
RICH: Yeah, thanks Chris.
Cheers, guy.
SPARKY RHODE: [INAUDIBLE]
giving some answers.
So thanks, Chris, yes.
"I'm running an app that listens to incoming SMS, and
if the SMS contains special text, I want to prevent it
from being received by a third-party apps, eg Handset.
I tried abort broadcast and setting Android priority.
It didn't work.
How can I do this?"
And Chris basically said that these other applications all
set their receivers to maximum priority, which
means they get it first.
So there's no way you can deterministically jump in line
in front of them.
In other words, sorry, but no.
So no.
NICK BUTCHER: Unless you want to overflow int.
RICH: Unless you--
Yeah, [INAUDIBLE].
SPARKY RHODE: [INAUDIBLE]
Moderator is a question from Nick Butcher.
It's not really a question.
NICK BUTCHER: Oh, sorry, I put that in there because we had a
problem with the GDL event, and we couldn't
update it with the links.
So I added it in the moderator, so it would appear
on the right page.
SPARKY RHODE: And it did the job because, without that, I
wouldn't be here.
"Is there a way to alter the standard font used, say,
Roboto light, across a whole application, including action
bar, et cetera, or do you have to do this manually in each
activity and fragment." And he also says, "Changing the font
is fairly difficult, Jelly Bean allows you to use Roboto
light condensed via the new font family XML attribute.
Pre-Jelly Bean, it creates a [INAUDIBLE] code."
Then he goes on to say, "I'd like to create a custom text
view and override set typeface to inject your custom font,
then use that text view instead of the standard one."
I don't know.
Nick, what do you think of that?
RICH: I don't know a better way of doing it across the
entire application in one fell swoop.
NICK BUTCHER: You could do it in Jelly Bean not too bad.
You could basically use the style-- create a
custom style, right?
Where you find out where the where font family is set and
override it.
RICH: [INAUDIBLE]
NICK BUTCHER: Yeah, to using the font family thing.
But to retrofit that onto a pre-Jelly Bean world, yeah
it's not going to be easy.
SPARKY RHODE: I know last week I talked about sticking
animate layout attributes in the style at the top level.
Would this work, or this not work for that?
NICK BUTCHER: So yeah, that would totally work in the
post-Jelly Bean world where you can set the font family
attribute for the entire thing.
But in pre-Jelly Bean, before the font family attribute, no.
But why would you ever want to do that.
I think part of the reason an action and everything is good
is because it's familiar.
If you start wholesale changing everything-- is this
your question, Chris.
AUDIENCE: No, [INAUDIBLE].
NICK BUTCHER: Another Chris in London, and then answered by
another Chris in London.
Or there's a conversation with yourself, perhaps, going on.
SPARKY RHODE: What can I say, I'm schematically.
I'm an engineer, not an artist.
And I would never want to screw with the stock UI.
NICK BUTCHER: Yeah.
SPARKY RHODE: I just want the app to do what it does.
I don't care what it looks like.
NICK BUTCHER: Yeah, this is setting off
alarm bells, this question.
Question why you need to do this, is my advice.
SPARKY RHODE: OK Peter in Belgium says, "I'm integrating
a plus 1 button.
But I want to use a token returned by
google.authutil.getToken with one of the scopes--
googleapis/on/plus.mean.
But a first plus 1 interaction still shows an extra
authorization dialogue.
Is this possible?" I presume he means is it possible to
show it without getting--
RICH: To reuse the auth token, yeah, so they don't need to
get the second authorization dialogue.
Um, I'm slopey shoulders that straight up to the Google+
developer office hours.
They manage their own APIs, and libraries and things.
I haven't put a plus 1 button in my app yet.
I know, right?
Why [INAUDIBLE] put a plus one button for your whole app?
You're supposed one button on the things that have real
world URLs.
NICK BUTCHER: Right.
You can plus 1 the whole app, and it would plus 1 the app
the listing in Play Store.
NICK BUTCHER: The Play Store URL, yeah.
RICH: But I think it would be more beneficial to if you had
a recipes app, and you were plus 1-ing the recipes, and
the recipes on the web [INAUDIBLE]
because then, someone sees the plus 1 in Google+, and they
can click on it.
And there's somewhere to go to.
NICK BUTCHER: Got it.
RICH: I don't know.
Makes more sense.
NICK BUTCHER: Plus 1 all the things.
RICH: Haven't tried it, thought.
Plus one-ing your app with the Play Store URL, though, seems
like a very good thing to do too, though.
NICK BUTCHER: Yeah, I can see that being in your about
screen also.
And if you had some kind of screen like that?
You could have a little plus 1.
Well, this is speculation, of course, because we haven't
actually tried it.
Google+ Developer Office Hours from
developers.google.com/live.
SPARKY RHODE: That's right.
We've got a couple of new people in the Hangout.
Welcome newcomers.
Do you have anything that you'd like to bring up for
discussion?
RICH: I recognize Leslie there in the purple shirt.
Good to see you, any questions this week, Leslie?
No, yes.
No, OK.
Anyone else?
OK?
Next muffin.
SPARKY RHODE: "Are there best practices or guidelines for
using Roboto light, Sans Serif light font family in the app,
combining with other font families.
For instance, using a light font family for headers, big
text, and normal for ordinary text.
RICH: [INAUDIBLE]
physically sick.
NICK BUTCHER: So we don't have any official guidelines yet.
It's something I'd like to see us lead on
a little bit better.
In my personal opinion, I like it for big text.
I like headers, like say there, I think that it can
work really well if you provide some contrast and
relief by using the Roboto light.
And also if there's secondary text as well.
So if there's a piece of information which isn't of
primary importance, rather than using a different font
color or the size, per se, you can use a different weight to
give relative importance.
My caution there is using light fonts at smaller sizes.
You might end up affecting legibility, especially on
smaller screens.
So be cautious with using it too much.
So I'd say stick with Roboto normal weight for most of your
body text, as it were because that's a font that's been
optimized for most of these general reading operations.
And it works for a variety of densities.
And then use something like Roboto light or thin.
Yeah, in less often, in kind of places to give relief.
SPARKY RHODE: So you're saying use the lighter weight
typefaces in the larger sizes, where they won't get
anti-aliased away.
NICK BUTCHER: Yeah.
SPARKY RHODE: Yeah.
I know from pretty much the earliest days of WYSIWYG
topography, the general guidance has been, use
multiple appearances in your type sparingly--
think accent, not mishmash.
I don't know about you guys, but there were definitely
times early on when I was like, ooh, this
computer has 25 fonts.
I must use every one in my documents, otherwise, I might
be missing an opportunity.
And I think the opportunity I missed was legibility.
NICK BUTCHER: [LAUGH]
Yeah, well, one of the things I always think as well that--
a screen can get too busy if you have multiple font sizes.
So I've seen screens where people are trying to use the
size of font to basically determine the importance of
the information.
So you might have like a headline in a list item, and
then some secondary text, and then it might be like a count
in a third font size, and so on.
And that can get really busy if you're basically having all
these different line heights.
Essentially, it doesn't really scan very easily.
It's quite hard to process, and it makes you
think about it more.
So what you can do instead is either use color or even a
lighter font face, so you will maintain the same kind of line
height or X height.
And just have some slight contrast in the weight of the
font instead.
So that makes it a bit easier to read.
SPARKY RHODE: Yeah, I think a lot of HTML renders are kind
of annoying in the way they deal with H1, H2, H3, H4, et
cetera because they do scale in size and
weight quite a lot.
And it kind of makes for a little busy appearance.
RICH: OK, so before we move on to the next one, one other
nice new developer that's come along with
Android 4.2 is the Daydream.
We now have, I guess, a similar
concept to screen savers.
When the device is plugged in or docked, or inductively
charging, the device will kind of go to sleep.
And you can choose what's going to be on the screen at
that time, whether it's going to be the weather forecasts,
or news, but, of course, your applications can make use of
these APIs to show your own data as well.
The user can choose to have your own Daydream showing up
on the screen.
Right now I have one from Currents.
SPARKY RHODE: I love the photostream.
RICH: And you can see the--
not very well.
We definitely, when we get off studio, I need to have the
HDMI around here.
You can interact with the currents as well as they're
coming across onto the screen and see all the latest news.
It just sits there, once it's charge, giving you the latest
up to date information.
It's a similar API to live wallpapers.
And you'll be seeing that in the SDK when it comes out.
NICK BUTCHER: It's called Daydreams.
Daydreams.
Is the consumer features.
I think it's just called Dream in the SDK.
So I once the 4.2 SDK comes out, just search for Dream.
In fact, there's already in the compatibility SDK.
There's a basic dream in there which you can probably take a
loot at and have a look at some of the APIs it offers.
It's going to similar to something like the widget.
It's this kind of pervasive awareness.
So if your application is updating the background and
offering up new content, it's another way to surface that.
It's kind of cool.
If someone is like a big football fan or something like
that, you might have transfer new or something, whenever you
put your phone down, and it's charging, you might just kind
of [INAUDIBLE].
It's kind of cool.
RICH: Yeah.
I've switched between having the weather online, the
weather forecasts, and the news.
It's quite nice just to see things going past that you're
interested in, very configurable as well.
What was the-- oh, we've seen that.
OK, next.
SPARKY RHODE: Pavel's got a question in sidebar.
He says, still no love for 3D camera in the Nexus line.
I don't want the 3D images, I just want to see
the depth of vision.
Interesting.
Well, I've got a lovely LG Slate tablet
that's got 3D on it.
NICK BUTCHER: They released an SDK for that, right?
AL SUTTON: Yeah.
SPARKY RHODE: It's a proprietary--
AL SUTTON: It's quite funny that every OEM who produced a
3D device never followed it up with a second
device in same line.
The Optimus 3D was a one-off.
The LG Slate was a one-off.
There was an HTC phone, as well, that was a one-off.
So I got the feeling it didn't work well.
RICH: LG did have the second in the Optimus 3D phone range
at Barcelona this year, I just never really saw it launch.
But at least it was thinner.
It didn't have that big bulk on the
back for the two cameras.
NICK BUTCHER: Still made my brain hurt
after a little while.
RICH: Still made your brain hurt if you looked at that
screen and didn't just freeze.
NICK BUTCHER: But yeah, if you are really passionate about
that, I guess the things you could do would be, petitioner
LG to contribute it to [INAUDIBLE], perhaps.
Beyond that--
SPARKY RHODE: Well, and as far [? just having it ?]
something, what could you use for that?
I mean--
I don't know, maybe infer something from focus?
That would be interesting.
Maybe just try to get the focal distance out of the
camera API or something.
AUDIENCE: [INAUDIBLE]
I'm interested in getting the device.
It's very easy to get a device.
But I would like to see this kind of sensor to be more
widespread.
And that's why I ask you about this eventually being put in
the future Nexus devices because if it's under 1% of
the market share, what's the point of creating applications
for such type of use case.
RICH: Yeah, that's a very valid question.
AUDIENCE: If the sensor is everywhere, then
applications will come.
NICK BUTCHER: Petition Mr. Rubin.
RICH: Yeah, I mean, the place where you'd expect it to take
off first would be on the 3D TVs, and councils, and things
like that, if it was going to--
They've had a lot of chance for it to happen.
As yet, it hasn't really.
My best experience with that has been Gran Turismo 5, on a
PlayStation with a 3D TV.
That's pretty moving.
And other people in the room jumped when we crashed.
All [? with our ?]
3D glasses on, but I think it still needs another step
change in 3D technologies for--
NICK BUTCHER: Oh, it's a screen thing.
I though it was camera thing so you can see the depth.
AUDIENCE: Yeah, you can really create amazing concept.
Like if you're typing SMS while you're running, you can
get warning, like [INAUDIBLE]
if you are nearing an obstacle so that you save your face,
RICH: [LAUGH]
NICK BUTCHER: Typing an SMS while you're running?
[INTERPOSING VOICES]
RICH: Really, Google Voice input filter for panting.
SPARKY RHODE: [LAUGH]
RICH: And you can speak to it whilst you're running and it
just takes your deep breathing out of it.
AL SUTTON: I'd wait for the Google Now card to pop up that
says, you're about to run into something in 30 seconds.
RICH: 30 seconds?
What, if you're running really slowly.
That moment in "Austin Powers" where he's like, no!
And then doesn't get run over.
NICK BUTCHER: [LAUGH]
Just like that.
RICH: Just like that.
NICK BUTCHER: [INAUDIBLE]
RICH: Where are we now, Sparky?
SPARKY RHODE: Next question on the Moderator.
"I'm trying to monitor the CPU usage of running processes by
running ADD shell top.
It works well in general, but when testing an app that plays
music, CPU usage for the process of running the service
stays at 0%.
Also on Stack Overflow, link included." I suppose that's
probably because it's being handed off to hardware.
You know, keep up a sample, you hand it off to the audio
subsystems, and the CPU can step back.
RICH: Yeah, [INAUDIBLE]
SPARKY RHODE: Sound right to you?
[? Tops ?] not representing the GPU or any of the other
accelerators.
AL SUTTON: The other thing would be, that, as well as
handing it off to the servers, if it's not a rooted device,
ADB shell top may not show you all the processes running.
RICH: Also true, yeah.
You won't see systems, necessarily.
NICK BUTCHER: That's a good point.
RICH: Yeah, it could be worth testing on a richer devices to
see if you do get any extra information that's relevant.
So the next one, "Could you please suggest a way to create
a video of your app/game?" We've had this three or four
times in the past on the office hours.
The recommendations are buy a Nexus 4 with Wireless Display
and an HDMI record.
SPARKY RHODE: So I just take my phone, and I point it at
the screen, and hold still, hold still, hold still.
RICH: So the most recent videos I've made have been
using the hardware accelerated an OpenGL accelerated
emulators, that seems to work very well for me, and then
screen capturing software on whatever system you're using
to create the video.
Otherwise, you can use HDMI recorders and a
device with HDMI out.
That works very well as well.
Black magic has some great boxes for that kind of thing.
But the cheapest way--
YOSSI ELKRIEF: Use two devices.
RICH: Yep, using two devices.
Taking a video of the screen isn't ideal , of course.
NICK BUTCHER: Yeah, your best results are always going to be
HDMI capture.
Second best is proably going to be emulator and then the
easy screen capture.
RICH: Oh, it's just those.
NICK BUTCHER: Emulator also, like blue stacks even, so you
can run it on your host machine.
SPARKY RHODE: That's an interesting idea.
I hadn't even thought of that.
RICH: Yeah, he suggests Android screencast.
I agree, Android screencast.
Anything that's using ADB for screen capturing is going to
be a little bit on the sluggish side, maybe one or
two frames a second.
So I would probably steer clear of that.
SPARKY RHODE: I haven't really messed around
with blue stack, thought.
How well does it work?
RICH: Sorry?
SPARKY RHODE: The blue stacks, how well does that work?
Because I haven't really tried it.
RICH: Anybody?
Anybody tried blue stacks?
Al must have done.
AL SUTTON: I played around with an early alpha version of
it, and it was a little sluggish and a little slow.
They may have improved it since then.
But--
RICH: You could use Andro VM.
That's what [INAUDIBLE] mobile were talking about at DroidCon
last week, and Gen Y mobile.
NICK BUTCHER: Was it Andro VM, was that the answer?
It's a virtual box based--
RICH: Android VM.
NICK BUTCHER: Yeah.
AL SUTTON: And there was also a product from a company
called Lumitrade at DroidCon, which was kind of a cradle for
a camera that would sit over the top of the phone.
So you could lay the phone flat and then just record
straight from that camera.
And that's about 250 Euros, I think.
[INTERPOSING VOICES]
NICK BUTCHER: Yeah, but then you obviously get the finger
in the way.
So it depends on what want.
If you want to demonstrate people interacting, then
that's one thing.
I quite like the product videos which use the show
touches thing.
So if you do an HDMI app capture, [? show ?] touches
from the developer menu, then you get a little translucent
white dot where you're touching, which I think comes
out quite well in product videos.
SPARKY RHODE: I see Yossi also has provided the URL for
androvm.org.
Thanks for that, Yossi.
And question here, "Will the third party app widgets be
able to hoot into 4.2's new lock screen functionality, or
is it limited to system apps?
How many possible per lock screen, assuming we will get
[INAUDIBLE]?"
RICH: I don't think we have a definitive answer on
that one right yet.
SPARKY RHODE: That one's a little--
RICH: Sorry Sparky?
Sparky was just about to answer the question.
Maybe he had the answer before dropping out.
YOSSI ELKRIEF: The answer was 42, no?
RICH: 42, was that the answer?
Yeah, 4.2, you've got to read something into that.
But yes, there will be a developer API.
You'll be able to add lock screen widgets similar to home
screen widgets.
I haven't seen the API myself yet, so I can't really comment
any more than that.
Moving on.
NICK BUTCHER: OK, "I'm trying to set the scroll position in
a remote list view on an app widget without
any scrolling animation.
Unfortunately, the usual set section position is not
remoteable.
Any hints on how to achieve this?
Is it even possible?" Mr. Widgets, have you done this?
RICH: The scroll position on a remote list
view on an app widget.
No, I have not done that.
Without any scrolling animation.
Unfortunately [INAUDIBLE].
No, I'd have to try that out.
AUDIENCE: [INAUDIBLE]
RICH: Ask it on Stack Overflow.
Sorry, is that Chris?
AUDIENCE: I don't think you can.
Because the list view runs in launcher, and so you can't
access that at all.
So I can't think of a way you could do it.
NICK BUTCHER: But he seems to be implying that you can
scroll it with a scrolling animation.
AUDIENCE: I didn't think you could that, but I don't know.
RICH: I just wonder if you can reinitialize the widget at a
different position.
YOSSI ELKRIEF: Yeah, you can, but not without
the scrolling animation.
RICH: Can you override the animation?
YOSSI ELKRIEF: We didn't try that.
The best thing we did was imitate a scrolling list.
So to avoid the scrolling animation, we divided the
widget into three parts and show every time we show a
different part to imitate the scrolling, basically.
RICH: Fair enough.
Sounds like it's not too impossible.
[INAUDIBLE]
NICK BUTCHER: "Anything new with the action bar in 4.2?" I
don't think so.
RICH: I haven't seen it in the what's new [INAUDIBLE].
NICK BUTCHER: [INAUDIBLE] have to wait for the final SDK and
check the [? dif ?] again, but I don't think so.
RICH: Nope.
OK, Sparky is going to join us as soon as he can.
He's had some technical issues with his battery running out.
NICK BUTCHER: "Does Nexus 7 support Miracast?"
AL SUTTON: No.
It doesn't even support HDMI out, so it
couldn't support Miracast.
YOSSI ELKRIEF: The new version will support, no?
NICK BUTCHER: But you can get [INAUDIBLE] support?
AL SUTTON: It's most likely needs the HDCP keys installed.
NICK BUTCHER: Yeah, that's very true.
AL SUTTON: Which wouldn't be on if it's not HDMI enabled.
So even if it did, it wouldn't be able to display protected
content, which would stop it playing Google
Play movies and stuff.
And it seems to be the device of choice for doing
that kind of thing.
RICH: True, but mirroring the screen and playing games on a
TV using the device and things like that wouldn't require
those, necessarily.
I don't know.
AL SUTTON: I also had a look at the Miracast list of
approved devices.
And it's not up there at the moment.
There is currently only the Samson Echo P TVs, which are
yet to be released, the Nexus 4, Optimus G, and Galaxy S3.
So I would say no for now.
But if a new one comes out because the new on that's
launched for 3G has a different power controller in
it, so it could in the future.
But I wouldn't see it as possible in the short term.
NICK BUTCHER: Yeah.
RICH: Yeah, I don't have any further
comments on it than that.
But I have lost my moderator.
NICK BUTCHER: Where are we up to?
RICH: Next page.
"My company's developing a Bluetooth low-energy device.
Will Android 4.2 support BLE in the SDK?" Don't know.
I think so, haven't checked.
NICK BUTCHER: I think we have to want till 4.2 launches to
what finally made the cut and what didn't.
RICH: [LAUGH]
[INAUDIBLE]
"What could I do wrong.
I get an illegal state exception with opening the
options menu.
The exception comes from ad view in the
phone window open panel.
Did I somehow break the activity life cycle?
More detail on Stack Overflow."
NICK BUTCHER: Yes.
RICH: You did something.
NICK BUTCHER: And it sounds like you did.
RICH: The specified child already has a parent.
You must call remove view on the parent first.
NICK BUTCHER: Sounds like you're inflating
a fragment or something.
Are you inflating, I think, when you were doing your
inflation of something, you're doing it wrong.
RICH: Or you're trying to do it more than once.
NICK BUTCHER: I'm trying to read on Rich's screen.
RICH: That's something that-- yeah, we should bounce that
one into next week's office hours.
That kind of question we need to get a little bit more in
advance so that we can have a good look through the pages of
stack traces and code that you've attached to the report.
It doesn't make for good watching to do it lives.
NICK BUTCHER: Yeah, to me, my first gut instinct is that
you're probably inflating something that's already
attached to something else.
One of the parameters when you call inflator.inflate, the
different XML stuff is, you give it a parent.
And you say whether or not to attach it.
And it sounds like you passing a true when it's already
attached to something.
You should leave that to the error, or maybe you should
just pass false.
So whenever your menu options create it maybe.
RICH: Oh, we'll bounce that one to next week.
That's fine.
Who just joined us in the Hangout?
Hugo, hey there Hugo.
Good to see you.
Have you got a question for us today? day
AUDIENCE: Yeah, actually I have.
Can you hear me?
RICH: Yeah, yeah, I can hear you fine.
Go ahead, please.
AUDIENCE: I was at V-hack this weekend.
We were hacking on a food app, and it has a few list views
with check boxes, and I had some problems there with
making a checkbook selected after the data had loaded.
So I have a cursor loader, where it has loaded some stuff
from the database.
And then I wanted to make it selected.
And of course, it was a V-hack, so I was hacking and
doing ugly stuff in the adapter.
But that didn't work on all devices
process for obvious reasons.
And then, in the end, I settled with just unloading
the data to the cursor loader, and then, after the data was
loaded, iterating the cursor again to set the checked item
on the list view.
But it feels a little bit clunky.
So I was wondering what's the proper way to do it.
Or is this the proper way to do it?
Because I asked around to some other devs and they didn't
really have a proper answer.
NICK BUTCHER: So you're extending simple cursor
adapter, right?
AUDIENCE: Yeah.
NICK BUTCHER: So you're using your bind view method there.
So that will be the right place to bind whatever the
cursor's data is to your UI, right?
AUDIENCE: I did that, but then it messed up.
Well, I think what happened there is that the check boxes
are maybe selected, but the list view itself doesn't know
it's selected for some reason.
[INAUDIBLE]
the separation that I got.
NICK BUTCHER: Did you try and synchronize the state of the
control within the list item with the selected state of the
entire item?
AUDIENCE: Yeah, I guess that's what I'm trying to do because
what makes sense is that the because you call sets item
checked, I guess, what the matter method is called on the
list, so that, yeah, reflects the state, and the view also
gets updated, which is quite nice.
And likewise, if you touch a list item, then it's
automatically reflected on the list?
But yeah.
I had some problems there.
So I'm not sure.
I want to generally make sure that the list is in sync with
the adapter and those kinds of things, especially for things
that are checked.
RICH: Yeah, so if the data in the adapter is changing
outside of the list, then you're got to notify the list
of what's going on.
And if the user's pressing the item on the list, you've got
to notify the adapter, or at least change the data set
behind it of what's going on.
AUDIENCE: Yeah, actually the pressing on the list
automatically works.
It's nothing that you have to do for that.
But my problem was loading the initial values from the cursor
adapter because it loaded.
And if I would set it on the view, for some reason, it
wouldn't reflect.
I'm not sure because
[INTERPOSING VOICES]
AUDIENCE: I did something terribly wrong.
NICK BUTCHER: What multi-set mode are you
setting on the list?
Because it sounds like you've got multiple items.
AUDIENCE: Yeah, I set it to multi-select.
NICK BUTCHER: So you're setting it to multiple.
RICH: So are you loading all the data into the list once
and then going around a second time for all the
check boxes, then?
AUDIENCE: Well, I basically [INAUDIBLE] on the what is it,
the onload finished?
Or I'm not sure what is the method in the
cursor loader itself.
So what I eventually did, and what worked on all devices was
just to iterate the cursor again, see what's selected,
and then call list set item checked.
But obviously, I don't think that's the
proper way to do it.
But I wasn't sure.
NICK BUTCHER: No, my gut feeling is you should be doing
this in bind view.
AUDIENCE: Yeah, OK.
RICH: Yeah, wait until you've got the data before you.
AUDIENCE: OK, I'll just try it again to see if I can figure
out what is the problem, if I have some more time for it.
AL SUTTON: So Nick, is the Nexus 4 made of soap?
NICK BUTCHER: That was my 7 again.
It survived this one though.
Yeah, it survived.
[INAUDIBLE].
SPARKY RHODE: So it's still an Nexus 7, it's not a Nexus 6
and 1/2 now?
NICK BUTCHER: [LAUGH]
RICH: What was that that came in on the
chat window from Francisco.
"I want to buy the Nexus 4 but I don't know whether to buy
now or in a couple of months."
NICK BUTCHER: Maybe Google--
SPARKY RHODE: I don't think you can buy now.
RICH: Oh yeah, we're certainly not going to--
and then Yossi says just override the bind view method.
[INAUDIBLE]
NICK BUTCHER: I'd say buy now.
Like, I got the 8 gig one, and I haven't really been butting
up against the storage limit.
I don't play tons of big games.
Probably get a 16 gig, big enough.
RICH: I'd get a 16 gig.
SPARKY RHODE: Are you talking about the Nexus 7?
RICH: Nexus 4s.
SPARKY RHODE: Oh, OK.
Because I do have the 8 gig Nexus 7.
And it's only got about six gigs of user accessible
storage, and that goes fast.
I mean, I think I've got probably four games, each of
which has more than a gig and a half of extra data.
So there you go.
There's your storage.
RICH: Yeah, totally.
I'm running a 16 gig Nexus 7, and I've got an 8 gig Nexus 4
as well, actually, and I haven't had
any issues with it.
But if I was buying one, I'd definitely go
for the 16 for myself.
I use a lot of the Google services, surprisingly enough.
[LAUGH]
So a lot my data's in the cloud.
Yeah, all my music's in Google music and Spotify, so it's not
much local.
It's the 11 hour flight to San Francisco, to go to my
interview will be where you use it the most.
RICH: Yeah.
NICK BUTCHER: Yeah.
AL SUTTON: And then the Google Play services have rolled out
into more countries, or are rolling
out into more countries.
So you can buy movies and do things like that, aren't they?
RICH: Yeah, music's coming, movies coming.
Movie purchases are coming, sorry, we
already have movie rentals.
AL SUTTON: That's just brilliant.
AUDIENCE: Oh, so music's coming over?
NICK BUTCHER: Yeah, that got announced on Monday as well.
It might have got missed in the slew of announcements, but
music is coming to UK, Germany, France, Italy--
RICH: We can check, but yeah.
NICK BUTCHER: Can't remember.
[INAUDIBLE]
RICH: Europe.
NICK BUTCHER: Yeah, its good.
I'm really pleased.
RICH: [INAUDIBLE] can be amazing.
I just can't wait for that.
I see a lot of the promotions that go on in Google music on
the US side, and some of the promotions are insanely good.
And I wish I could buy them, and then I press it, and it
doesn't work.
NICK BUTCHER: So especially if you guys, like us, are kind of
moving between devices fairly often, then, yeah, you don't
have to have the pain of moving all your
music over or whatever.
It just follows you around.
AUDIENCE: Yeah, I mean, I've had the cloud bit for a while,
because I'd signed up via proxy.
RICH: Ah, sneaky.
[INAUDIBLE]
What were you going to say, sorry?
AUDIENCE: No, go on.
RICH: I always have this play list called offline on my
Google Music, and whenever I sign into a new device, that's
the one I just pin it offline.
And then, if I'm on the web, or on any device, and I move
anything into the offline Play list, it instantly syncs down
to all my devices.
AUDIENCE: Nice.
RICH: It's kind of cool.
So if you buy a new track, I just set it to be in the
playlist offline because I go on the London Underground a
lot, I need offline music.
So I can always set my playlist up, which is fun.
OK, Al says he's just read the blog post, and Google Play
Music is heading to UK, France, Germany, Italy, Spain
this November.
NICK BUTCHER: Cool, Spain.
That's what I missed.
RICH: Yes.
Do we have anything left in the Moderator?
SPARKY RHODE: I don't know what
happened while I was offline.
RICH: I'm just looking now.
There's one about a chronometer.
"I would like to use Roboto light for the chronometer, but
it seems the width for zero in light differs from the others
[? digits ?].
Hence, there's some shifting when
chronometer passes zeroes.
Is there anyway to solve this problem other than using
another font?" I have the same issue.
I've been redoing a Chronometer style application
recently, and I get a wiggle in the time when I'm using
Roboto light.
So yeah, you can change the font.
You can choose not just have it centered.
If [? you fix ?] the position.
YOSSI ELKRIEF: Wiggle is a feature.
RICH: Wiggle is a feature.
It drives me insane.
I'm not quite to sure.
You know that it's not fixed-width.
NICK BUTCHER: You could ask Christian why it's not fixed
width, or should it be fixed width.
It's open source.
You could edit the glyphs, make it fixed width.
RICH: Especially if it's just zero.
I didn't know which character it was
that doing the shifting.
[INAUDIBLE]
NICK BUTCHER: Yeah, I'm not sure if it's basically fixed
width or not.
RICH: Can you see it shifting?
Can you see that bright light?
At what point is it going to decide that this isn't all
just white.
NICK BUTCHER: Ah, the wiggle the wiggle.
RICH: The wiggle, oh my god.
Sneak preview of the new ultimate stop watch and timer
coming soon to the Play Store.
[INAUDIBLE] this is brilliant.
Thank you very much, Marie.
Well, we're out questions from the
Moderator, as far as I know.
NICK BUTCHER: And Patrick says yeah, what is the benefit of
Google Play Music.
Right now, nothing.
RICH: Well, I wouldn't say that.
I would say it drives users into the Play Store, where
they will also find your applications.
NICK BUTCHER: That's true.
RICH: It increases traffic to the place where your apps are.
NICK BUTCHER: More users with forms of payment on record.
So it's easier for you to buy your apps, this is true.
RICH: But if you're asking, directions, creation, APIs,
things like that, there aren't any.
NICK BUTCHER: There's no APIs, or affiliate schemes, or
anything like that.
SPARKY RHODE: It's certainly true that, several times a
week, I go to Google Play, and I look at music, and it says,
get music for free.
And I click on music for free and it says, Google Play Music
is not available in your country.
And I say, OK, fine, I'll go download an app instead.
RICH: [LAUGH]
NICK BUTCHER: Can you use it to release the original
soundtrack from your game, yeah, there's a scheme where
can sign up to sell the music that you made, your own, yeah.
Much like you can as an app developer, there is a similar
thing for musicians.
RICH: Yeah, you can share music with people for free.
You can ask people to buy music.
There's a good ecosystem inside Google
Music for all of that.
Any other questions?
NICK BUTCHER: Yeah, you're right.
There are benefits to a developer.
Yeah, it's that whole mall thing we're trying to develop
with Google Play.
We're trying to make Google Play this place you go to buy
valuable content.
And I think it's like a training thing for users, so
people get used to going there, and spending money, and
having a trusted, paid relationship with the store.
And I think that's a really good thing for developers.
So yeah, I was a bit too flippant before.
RICH: Actually, I haven't been checking the comments thread.
So I'll just have a quick look to see if anyone's posted any
questions on Google+.
"Can you recommend a Bluetooth keyboard for Nexus 10?" I
haven't tried any, sorry.
I have tried a Wacom tablet, and that worked very nicely
with markers.
But I haven't tried--
SPARKY RHODE: If anybody hasn't tried it, and you get
the chance, try out the gesture typing.
It's magical.
NICK BUTCHER: If by anyone, you mean, you or us.
RICH: All the people that don't get access to it for
next couple of weeks haven't tried it yet.
SPARKY RHODE: Yeah, even on the 10 inch tablet, which is
perfectly big enough for touch typing, the gestures still
work wonderfully.
NICK BUTCHER: I love the fact that you don't have to switch
keyboard or anything like that.
Because when I have two hands, I thumb, I tap out.
And then when I have one hand, I swipe.
AL SUTTON: There's a really meta question in the comments,
"How do I post questions?"
RICH: I saw that.
[LAUGH]
[INTERPOSING VOICES]
RICH: Yeah, no, I think he's asking about where
this chat stream is.
Of course, it's inside the Hangout, so people from
outside cant see it.
We always try and read those questions out.
But you can ask questions in the Moderator at
developers.googl e.com/live/android.
NICK BUTCHER: Slash bleh.
RICH: Or in the comment thread that you just asked the
question in.
SPARKY RHODE: More specifically, that URL that
Rich said, and then find this event.
And put it in the Moderator for this event.
RICH: Jamie was asking, maybe he missed it , actually,
because he joined 14 minutes in about the "Will the cache
directory from multiple user accounts get external cache
directory?"
NICK BUTCHER: Yeah, if you're doing the right thing, and you
getting all the system calls to get the directories, then
it should just work transparently to you.
SPARKY RHODE: And they' not shared, right?
NICK BUTCHER: No, yeah, it'd be individual per user.
RICH: "When does [INAUDIBLE]
come for the Galaxy Nexus?"
YOSSI ELKRIEF: So basically, only the external storage is
shared between users?
NICK BUTCHER: No, the whole world.
The whole everything.
[INAUDIBLE]
RICH: No one know about the release date of Galaxy Nexus.
NICK BUTCHER: Yeah, we can't comment on release dates for
Galaxy Nexus because we don't know.
But typically, what's happened in the past is, it tends to be
a couple of weeks.
Like, older devices will tend to get an OTA a couple weeks
after the new devices go onsale.
SPARKY RHODE: Yeah, basically, let the dust
settle on the new stuff.
Because--
NICK BUTCHER: Yeah, so 4.1 came out with the Nexus 7 in
Google I/O, and then it was, what, a couple of weeks
[INAUDIBLE]
before it OTA'd to the Galaxy Nexus, I
mean, that's been typical.
But I don't know
RICH: Most of these devices also have wired HDMI out of
some sort or another, as well as the Miracast.
The Nexus 10 has a micro HDMI slot on the side.
And the Nexus 4 is using--
NICK BUTCHER: Simport.
RICH: Yeah, sim variety of display port, which adapters
appear to be appearing on Amazon at the moment.
NICK BUTCHER: Oh cool, actually, because the HDMI MHL
adapters always have to powered to be powered, right?
You always have to plug in a power source as well as an
HDMI, whereas I believe the Slimport doesn't require the
power, so it's just an adapter.
RICH: It doesn't require the power, but it still has power
socket on, so you can still charge your phone whilst it's
plugged in, which is probably a good idea.
But yeah, cool, the one that I've seen so far.
So I'll be picking one of those up for
presentations soon.
NICK BUTCHER: Another dongle to buy.
RICH: Another dongle to buy.
And a new TV to buy, with Miracast support because I
don't want to stick [INAUDIBLE].
SPARKY RHODE: It just blows my mind to think of using a phone
to drive pictures onto my 42 inch TV.
RICH: Yeah, those TVs are pretty
high-res these days, right.
SPARKY RHODE: We are so living in the future.
NICK BUTCHER: I'm so excited about the two-screen API.
I think it's going to drive a whole bunch
of interesting apps.
RICH: I totally agree.
The two-screen API, absolutely awesome for gaming, for apps,
presentation, even YouTube.
Even YouTube.
All these things can benefit a lot from dual-screen APIs.
NICK BUTCHER: Yeah, the API hasn't been released yet, but
if you want to start thinking about it, basically, you'll
see the second screen is going to be a bit like a dialogue.
So your app completely contains it.
It's not like you can have one thing going on in one screen
and running, [INAUDIBLE] they are entirely linked, so your
app owns, like, a dialogue which is on the big screen.
So start thinking about that, how you might draw to another
dialogue, as it were.
And that will have its own context.
So it will load the right resolution, durable, and
things for the screen size, and whatever of the TV it's
running on.
AL SUTTON: Is there any compatibility layer for Google
TV's second screen API?
NICK BUTCHER: Second screen API is just for passing
intents and saying, go run this, right?
It doesn't actually do a companion app type thing.
I think it's a different problem with a
similar name, I think.
Matt?
RICH: [LAUGH]
Virtual Matt Android.
We should have him dialed in.
I forgot to thank the guys at Sony, Sony developers, for
giving me this T-shirt at DroidCon as well.
Android Attacks, dum dum dum.
Thank you very much, Sonny--
NICK BUTCHER: For that terrifying T-shirt.
It's kind of Halloween, right?
We've got Halloween theme going on all
over the office today.
So a big Android crushing cities, I don't know, seem to
work for me.
And with that, it's the end of this week's Hangout.
Thank you all for joining.
We will see you again next Wednesday, 2 PM.
We're slightly shifted out of the US time zone right now
because they change their clocks at
different time to us.
NICK BUTCHER: So catch them in seven hours, I guess, right?
RICH: Perhaps in seven hours.
And have a good week.
YOSSI ELKRIEF: Thanks guys.
AUDIENCE: Yeah guys, bye, thank you.
NICK BUTCHER: Cheers.