Placeholder Image

Subtitles section Play video

  • [MUSIC PLAYING]

  • CHET HAASE: Hey.

  • [CLAPPING]

  • DAN SANDLER: Hey everybody.

  • Welcome back to What's New in Android.

  • I'm Dan Sandler from the System UI team.

  • CHET HAASE: I'm Chet Haase from the Android Toolkit team.

  • ROMAIN GUY: And I'm Romain Guy from--

  • I still don't have a name for my team.

  • So from the Android team.

  • [LAUGHTER]

  • And you may remember us from other talks,

  • such as What's New in Android 2017,

  • What's New in Android 2016, What's New in Android 2015,

  • What's New in Android 2014.

  • Not What's New in Android 2013.

  • CHET HAASE: We don't talk about that one.

  • ROMAIN GUY: We don't talk about that one.

  • DAN SANDLER: You know, that was the time

  • that we had Jelly Bean two years in a row.

  • It was brilliant.

  • We didn't have to redo the logo or anything.

  • [LAUGHTER]

  • ROMAIN GUY: But now--

  • CHET HAASE: What's New in Android,

  • what I like to call the Android keynote.

  • Nobody else does.

  • But I like to call it that.

  • Because this is where we talk to you about all of the developer

  • stuff going on in the Android platform.

  • In particular, let's talk about Android P. Specifically,

  • let's talk today about--

  • oh, hang on.

  • Android APIs.

  • [LAUGHTER]

  • ROMAIN GUY: All right, first we'll start with distribution.

  • You saw in the keynote we introduced the dynamic ad

  • bundles.

  • [? Tor's ?] demo was pretty clear.

  • It's pretty easy for you.

  • All you have to do is click your different menu

  • when you build your application.

  • And we're going to save you some space.

  • It's going to be faster and easier for your users

  • to download your app.

  • And I'm sure you have a lot of questions about it.

  • So we have a couple of talks this afternoon,

  • at 5:00 PM and 6:00 PM.

  • Go there if you want answers, because we don't have them.

  • CHET HAASE: So you're going to see a slide a whole lot

  • like this through the rest of the talk.

  • I feel like the main function we serve

  • in this talk is to tell you the other talks to go to.

  • We're like the appendix.

  • We're like the index for the rest of the content.

  • DAN SANDLER: I mean, we're like obsolete, like vestigial.

  • Is that what it is?

  • CHET HAASE: I don't like to think about that.

  • ROMAIN GUY: Yeah.

  • Let's be clear.

  • A lot of people back at work have done all the hard work.

  • We just get to go on stage and talk about their hard work.

  • CHET HAASE: So speaking of that, let's talk

  • about Android Jetpack.

  • We heard Steph talk about this in the developer keynote.

  • This is a set of components, as well as

  • guidance on how to build better Android applications.

  • All of you are familiar with most of what

  • is in Android Jetpack already.

  • What we're doing is adding to it over time

  • with stuff that's going to make it even better.

  • And we're also improving it over time.

  • One of the major steps that we're taking

  • is what I like to think of as a refactor, because it's

  • a refactor.

  • My favorite thing about the support library

  • is how the package names embed the release number in them.

  • So, for example, we support things like v4.

  • Actually we don't support v4 anymore.

  • We have a min SDK of at least 14 now.

  • But it's in the package name.

  • Isn't that a little bit silly?

  • So we're doing away with that.

  • We're doing a whole lot of tedious renaming.

  • And we're also providing tools to make it easier

  • for you to do the similar refactoring that you're

  • going to need to do in your application,

  • as well as in Android Studio.

  • Everything is being renamed to something more appropriate

  • called Androidx.

  • If you want to know more about the details of that,

  • the renaming, as well as doing more modular, more fine-grained

  • splits to make sure that you don't drag in too much stuff,

  • go to the talk.

  • Learn what's new in Android Support Library.

  • Also, there was an article that was

  • posted on the Android Developers blog about a half hour ago.

  • Check that out for more of the details there.

  • Let's talk about Android Test, which

  • is part of this new Jetpack thing going on.

  • Android Test is the ATSL stuff, the Espresso

  • stuff that hopefully you were already using really good ways

  • to test your application.

  • Now, they provide first class Kotlin support, as well as

  • more elegant APIs for reducing a lot of the boilerplate.

  • Here's a simple example.

  • We used to have a way of asserting,

  • which, A, was not necessarily obvious

  • in the parameters you were passing.

  • Also, unobvious in the order of the parameters

  • that you were passing.

  • And then it would give you an error message that also

  • didn't really help very much.

  • So we have something a little more sensible now.

  • You can assert that it's actually working

  • on the visible property.

  • And the error message gives you something more

  • that you can work with a little bit better.

  • Go to the Frictionless Android Testing

  • talk for more information about that stuff.

  • Jetpack architecture is about the architecture components

  • that were announced last year at I/O

  • and then iterated with feedback from the community,

  • and finally went 1.0 in the fall.

  • So we have the release parts of those,

  • which includes all the Lifecycle stuff, and the ViewModel stuff,

  • as well as the Room, the persistent data model

  • stuff, and LiveData.

  • So hopefully you are using that stuff already,

  • at least in your new applications.

  • And what we also have is recently we

  • released the paging library for doing asynchronous data paging

  • into RecyclerView.

  • That was alpha, then beta, because that's

  • how those things work.

  • And now it's 1.0 this week.

  • So please start using that.

  • And we also talked in the developer keynote

  • about a couple of new things that you should check out soon.

  • WorkManager is currently in preview.

  • There's going to be a talk about it.

  • It's about job scheduling, but job

  • scheduling in a way where we handle all the cases back

  • in previous releases, instead of you having

  • to use specific approaches, depending

  • on what version and device that you're on.

  • Also, navigation.

  • It turns out that up versus back is a hard problem

  • for applications to solve.

  • We are making that much easier.

  • And we're integrating with the tool

  • to make it even easier yet.

  • So go to all these talks.

  • There's an overview talk, as well as

  • specific talks on Navigation Controller and WorkManager,

  • and also a talk on RecyclerView and Paging.

  • Me?

  • Again?

  • ROMAIN GUY: It says your name on the slide.

  • CHET HAASE: I keep building suspense into this thing.

  • What's going to happen next?

  • Who's he going to hand the clicker to?

  • It's still mine.

  • DAN SANDLER: It's still you.

  • CHET HAASE: OK.

  • Let's talk about battery.

  • This is one of the ongoing efforts in Android

  • to help the users, because it turns out

  • battery is really important.

  • We're all power users.

  • Unfortunately, we just keep using the power.

  • So what can we do about it?

  • We can create these app standby buckets.

  • We're going to monitor the usage of applications,