LYLA FUJIWARA: Hello.
Welcome to the Android Dev Summit 2019 and very first
ever #AskAndroid livestream.
I'm Lyla Fujiwara and I'm an Android developer advocate.
DAN GALPIN: And I'm Dan Galpin, also an Android developer
advocate and I am Lyla's manager, which
means I'm ultimately responsible for everything that I say
and everything that she says.
LYLA FUJIWARA: Yep.
[LAUGHS]
All right.
So let's get to it.
All summit long, the #AskAndroid team
will be answering your questions on form factors, Jetpack
Compose, Kotlin, coroutines, [INAUDIBLE] community,
architecture components, Android 10, and so much more.
TOR NORBYE: How about tools?
DAN GALPIN: Yeah, Android Studio.
LYLA FUJIWARA: And tools, which is happening right now.
DAN GALPIN: All right.
So if you already have a burning question
or you're excited about something
you saw in the keynote, well, there's no need to wait.
Tweet at #AskAndroid for a chance to see your questions
answered live during the Android Developer Summit.
LYLA FUJIWARA: And you can also put your questions
on the livestream.
DAN GALPIN: Yes.
LYLA FUJIWARA: So either way.
OK.
So finally, a big shout out to everybody
that's participating on the livestream
from around the world.
I have a few countries here--
Bangladesh, welcome Kenya, Congo, Brazil, Indonesia,
Germany, Netherlands, Pakistan, India, Nepal,
Mexico, and the faraway land of Palo Alto.
DAN GALPIN: We have a jam-packed show for you today,
so let's get rolling.
LYLA FUJIWARA: All right.
So first up, I think we already got a sneak peak,
but we're chatting with Chet and Tor.
TOR NORBYE: Now in that order, Chet and Tor.
LYLA FUJIWARA: Yes, Chet and Tor.
DAN GALPIN: So Tor is the tech lead for Android Studio,
and he's our demo master, while Chet leads scalable outreach
for Android after a long stint leading the Toolkit team
and is an expert in graphics, UI performance, and donuts.
CHET HAASE: Especially donuts.
DAN GALPIN: You can catch both of them
regularly on the Android Developers Backstage
podcast, which means they both love to talk.
So let's welcome Chet and Tor.
TOR NORBYE: Thank you.
CHET HAASE: Thank you.
LYLA FUJIWARA: OK, so go ahead, start asking your questions.
We've got one right off the bat.
So keynote just happened.
What was the favorite thing that you saw from the keynote?
CHET HAASE: I like seeing more about Compose on the screen
and seeing a little bit more code
and how stuff is put together.
TOR NORBYE: That's it?
[LAUGHING]
CHET HAASE: Well, I figured you were
going to add the other part of it, which is,
yeah, yeah, yeah, but what about?
TOR NORBYE: Well, clearly Android Studio 4.0.
LYLA FUJIWARA: OK.
CHET HAASE: I thought you were going to talk
about the tools for Compose.
What is Compose without the Android--
[INTERPOSING VOICES]
TOR NORBYE: It is one of the many features in Studio 4.0.
So we actually bumped major versions from 3.6 to 4.0,
and it's because we have a lot of awesome features.
Compose is one of them, but there's many other things
as well.
LYLA FUJIWARA: All right.
So both of those things, if you want to check them out,
you have to download Android Studio 4.0.
TOR NORBYE: That's right.
DAN GALPIN: And people can play with the motion editor.
Is that true?
TOR NORBYE: Yes.
I think the motion editor's enabled in Canary 1.
DAN GALPIN: Wow.
That's exciting.
All right.
So we have a question from Andrefrsousa, which is
pronounced something like that.
"Is there a way to change the default
Android Emulator phone number and country code?"
TOR NORBYE: No.
[LAUGHING]
DAN GALPIN: Well, that's a good question.
I like that.
TOR NORBYE: I asked the team.
There isn't, and their question was, why do you want that?
So if it's a--
DAN GALPIN: So we need to tweet back
at him, why do you want that?
CHET HAASE: They know this is not
a back-and-forth conversation, right?
DAN GALPIN: Yeah.
CHET HAASE: It's kind of a one-way stream.
TOR NORBYE: You know, if we add a setting
for every possible one user request,
it will be kind of a mess of a UI,
so we try to make sure that there's
a really good use case for it.
So if someone would make that case,
then we would consider it.
LYLA FUJIWARA: So Htorrex asks, "When are you
planning to have a stable version of ViewPager2?
DAN GALPIN: Oh.
CHET HAASE: Good time to ask that question.
So it was alpha for quite a long time.
It's been in several beta releases,
and the hope is that it goes to RC real soon now, which means
exactly that, real soon now.
And then at RC, the expectation for RC in general
is that is basically the stable build.
We want one last sanity check, so I
would expect stable to fast follow sometime after that.
LYLA FUJIWARA: All right, sweet.
DAN GALPIN: OK.
We've got some questions that are coming in
from the livestream and, "Any app security measurement tool
coming in Android Studio?
TOR NORBYE: Generally, we don't talk about future plans
that we haven't announced.
DAN GALPIN: Ah, OK there we go.
So maybe, maybe not.
And that was from [INAUDIBLE].
TOR NORBYE: I have no announcement at this time.
[LAUGHING]
DAN GALPIN: That's a very secure way of putting that.
I like that.
CHET HAASE: The advice that I tend
to give in a Fireside Chat, which we're
going to have another one of this afternoon,
is if your question has words in it like "will you"
or "is the team going to" or "will there
be a feature," like--
TOR NORBYE: Or when.
CHET HAASE: You're not going to get joy out
of the answer to that question.
LYLA FUJIWARA: OK.
So that in mind, Jonathan_cps asks,
"Are you guys working on a tool to show a preview
screen for Jetpack Compose?"
TOR NORBYE: Yes.
So I guess that question was submitted before the keynote,
because we just gave a demo of it.
So yes, a preview is one of the core features
of our Compose tooling in Android Studio 4.0.
LYLA FUJIWARA: All right, cool.
DAN GALPIN: OK, so here's a question.
What is your favorite feature in Android Studio 4.0?
TOR NORBYE: Can I reinterpret that to,
what are your top five features in 4.0?
DAN GALPIN: Yeah, absolutely, please.
TOR NORBYE: Because it's very difficult to choose one,
plus I'll probably make some enemies on the team.
DAN GALPIN: I was going to say, plus, this way,
you can actually pitch multiple features to our audience,
so this is great.
TOR NORBYE: Exactly.
So in my top five, the first one I would say
is the build profiler, which we didn't show in the keynote.
So there's going to be a demo later today.
DAN GALPIN: Ah, there we go.
Nice.
TOR NORBYE: But it's basically going
to let you see, profile your build to find out
what your potential mistakes are and how
to optimize it to run faster.
CHET HAASE: So just to give a little more information,
I assume that builds on what we've
been seeing for a while, which is, as it's doing builds,
it's actually telling you how long it
took to do each of those steps.
Right?
So you're just getting this in a more visual way?
TOR NORBYE: Yeah, but it's not just
about showing you how long each task took.
We are looking-- for example, we've instrumented more stuff
into the build system, and we're looking for potential mistakes.
So we can tell you, for example, hey,
this task it's always running.
It's not looking at its inputs, so that
means that it will always run, even incrementally.
CHET HAASE: So analysis as well.
TOR NORBYE: So we're basically pinpointing a lot of analysis,
saying, here's a problem, here's a problem,
here's how to fix it.
So build attribution is one, motion editor's another one.
You saw that in the keynote.
It's a pretty great feature people have been waiting for.
Compose tooling, of course, is there.
My second most favorite, I would say,
is having the embedded emulator.
So we had a little bit of a slip-up
in the demo in the keynote, but it's a really great feature.
And it's just so much more convenient
to be able to have the emulator participate in the window
management of the ID without having to sort of juggle
top-level windows.
LYLA FUJIWARA: Yeah.
I have an emulator that opens up on a separate screen a lot
of the time, so--
[INTERPOSING VOICES]
TOR NORBYE: And then layout inspector, which
has a lot of new features for--
it's a bit like the Chrome DevTools
where you can sort of track down,
why is this font size the way it is,
or what is the paint hierarchy looking like?
Why do I have a clipping bug?
CHET HAASE: Yeah I like the 3D thing.
We saw a little bit of that in the demo in the keynote, right?
TOR NORBYE: Yeah.
And there's more as well, so we're
going to do a 25-minute demo later today of a bunch more
features in 4.0.
LYLA FUJIWARA: Awesome.
And while we're still going, if you
have questions about any of that,
please post them to the livestream.
Speaking of which, Nora from the livestream asks,
"Is Kotlin good for enterprise?"
CHET HAASE: Of course.
Yeah.
Actually, I gave a talk about Kotlin language in general
at a conference a few weeks ago.
And it was a conference with mostly non-Android developers,
and the room was packed.
I would say probably a quarter of the people in the room
were doing Android development.
The rest of the people were using Kotlin on the back-end,
enterprise, web, whatever.
TOR NORBYE: And of course, I use Kotlin on the desktop.
So Kotlin is not just for Android.
So Android Studio, we have a lot of-- basically,
almost all the new code we write is written in Kotlin as well,
which runs on your desktop.
LYLA FUJIWARA: Awesome.
Yeah, and we actually have a #AskAndroid segment
about Kotlin and coroutines that's coming up later.
And the person who is basically helping organize Kotlin
everywhere is going to be a part of that,
so we can answer much more of those questions.
DAN GALPIN: Yeah.
So we've got another question from the livestream,
comes from Llama.
"Has Android Studio improved in terms of speed?"
TOR NORBYE: I think, clearly, yes.
Right?
So we spent the last year or nine months working
on something called Project Marble, where
we focus exclusively on performance and stability.
So there's many aspects to speed.
I mean, if he or she means build speed,
OK, obviously, we are working on a profiler.
But you know, the things we did in Project Marble was
reducing UI freezes, reducing memory usage,
optimizing the way we were handling
a bunch of calculations.
Overall, speed was a big, big concern for us.
CHET HAASE: There was some specifics called out
in the keynote as well, I think in Caren's section, talking
about things like, will incremental annotation
processing get faster.
Was that part of--
[INTERPOSING VOICES]
TOR NORBYE: Yeah, it was.
And I think another one that is maybe not so obvious
is that Studio is happy if you give it more memory.
Most users actually run with the default, which is about--
I can't remember-- 1.2 gigs of RAM.
For large projects, that's just not enough.
And so we actually give you suggestions as part of Marble.
Hey, you should resize your heap to something
bigger based on your machine and your project size.
And if you accept that suggestion,
you'll actually find Studio running much better.
LYLA FUJIWARA: OK, cool.
All right.
So I'm just going to do this one.
DAN GALPIN: Oh, this one goes right
into that last thing he was saying though.
LYLA FUJIWARA: OK, cool.
So from Twitter, Pranayairan asks,
"With more and more features getting
added to Android Studio, is there
anything done to reduce the IDE memory footprint?
With each new release, AS is hogging more and more memory."
CHET HAASE: Requesting.
LYLA FUJIWARA: Requesting.
[INAUDIBLE] requesting more and more memory.
TOR NORBYE: Right.
Yeah, so I just answered that.
We're working on it.
[LAUGHTER]
LYLA FUJIWARA: That's what I thought.
Yeah, so all right.
Cool.
All right.
So yeah, I like that one.
DAN GALPIN: Down to our last questions.
This one here?
LYLA FUJIWARA: Yeah.
DAN GALPIN: OK, so Adrian asked, in "single or multiple activity
implementation, which one is better?"
CHET HAASE: Tricky question to answer.
We are recommending that people move to single activity.
So originally, Android was all about multiple activities.
You go from place to place in your application flow
and new windows pop up.
It's better user experience if you
can stay within one activity.
If you have deep links, maybe that's
a multiple activity navigational situation.
DAN GALPIN: All right.
LYLA FUJIWARA: OK, cool.
So I think that we are about to wrap up, but just
with Chet and Tor, so thank you so much for joining us.
Any last things to say to the livestream?
CHET HAASE: Hi.
TOR NORBYE: Try Studio 4.0.
LYLA FUJIWARA: OK, try Studio 4.0.
DAN GALPIN: Check out the Android Developers Backstage
podcast, and submit your questions to #AskAndroid.
[MUSIC PLAYING]