[Music] hi I'm Chet Haase from the Android developer relations team welcome to now in Android number 13 so 13 is weird hotels don't feel like posting that floor because people don't like the number 13 some sort of superstitious thing if you have that issue with 13 like if you avoid 13th floor the last donut in a baker's dozen or when you're just counting by one and you pass 12 before you get to 14 if you have a problem with it you can skip this episode and just go back when we have number 14 next time around and then just pretend that since it's software there was an off by one error if that works for you in the meantime tons of things have happened in the last couple of weeks there's a lot to cover so go ahead and crank this video or podcast up to 2x and let's get rolling first of all obviously Android 11 is out on the streets now so developer preview 1 when we first did developer previews lollipop was the first release that we did that it was a really good idea it was a really poor implementation because things were undergoing massive churn at the same time as a release that and then since then in the release as many releases since then we sort of learned how to do it better and better we get it out there in a fairly stable form so that we can get your feedback and then react to it this one is coming out even earlier than we have in earlier releases so that means that there should be more time for you to actually play with it and react to it so please do that go ahead and download it you can install it on any of the pixel 2 3 or 4 devices if you want to put it on a developer device or just use the emulator in this in the Android studio tool that will work as well so play with it test out your app make sure things behave the way that you think they should some of the features that are worth thinking about in the new release that are in the developer preview our support for 5g this includes a new API is that allow you to check the unmeet unmetered status and with the bandwidth capabilities that come with that new network capability bubbles was a feature that was introduced in Android 10 kinda it came out but it came out under the guise of a developer option a user had to enable to actually see bubbles so we got a little bit of testing hopefully you got a little bit of testing if you wanted the feature but it wasn't really a real feature for users now it is it's an official API that you can and should use for UI about messages about contact information that you want to propagate to the overall UI on the device one-time permission so there was a tri-state location permission that we introduced in Android 10 the ability to ask the user do you want to enable this permission or deny this permission or only enable it when this application is in the foreground that was a really good idea users like that they use that a lot and we want to take that a step further so not just running in the foreground but do you want to use this while the application is running in the foreground in this session only so it's not like a turn this thing on and then the app has it forever it is turned it on because I recognize that it needs to be used right now and then disabled after that foreground usage not only are we going to have that for the location but we're also turning on that permission capability for microphone and camera usage as well scope storage we're taking that a notch further than it went in Android 10 we're enabling some new capabilities are interesting hopefully make it a little bit easier to use some of the stuff and more powerful you have the ability to do batched edits and also access to RAW files and paths there's been some new biometric prompt api's according to some of the new capabilities that are out there for some of the new devices in the world and we've also folded those in for compatibility api's into the biometric Android X library so check out those api's and data blobs I think that is probably my new favorite word and software blob apparently stands for binary large object but I just like it as the word blob data blobs are large chunks of data that you can download and install for use between multiple apps so let's say you have a massive ml model you want to put it on the device and you have multiple apps that want to access that data you don't need to install it for both of them instead you can use the blob store manager API to share that data around so checkout android 11 download the Developer Preview and play with that on with the show Android X releases there were some basically bug-fix releases that came out for fragment media to room and transition all of those are stable in their current version now mostly bug fixes but also the fragment library had some interesting lint check so you might want to check out next Android studio so we had a couple of interesting releases there I've talked about both of these releases in previous now and androids but first of all we have 3.
6 that finally went stable so now you can get all of those features we've been talking about already except in the stable version so if you're holding back waiting for it to actually be the full release thing now is the time some of the new things that you may be interested in there include easier leak detection can be a complicated task especially if you have to download files and run specialized tools so that is much easier now in 3.
6 also splitview for code and design so if you're editing a resource file an XML resource file typically you would see it in code or you could use a design tool when that's available but one or the other now you can actually see both at the same time so you can sort of see the changes that you make to either format and see them reflected than the other one pretty useful emulator improvements for working with both location as well as multi display situations and view binding which we're gonna hear about soon this is a new capability in 3.
6 you need the new tool to use this thing that essentially replaces the need for fine view by ID and all of that boilerplate code also 4.
0 when beta so you can either use the full release of 3.
6 or if you want to be slightly more on the leading edge you can use 4.
0 so check that out the motion editor I've talked about here before the ability to actually use a visual tool for creating these powerful UI animations with the constraint layout subclass or also jetpack compose if you want to see what we're doing with the new UI capabilities in that library still pre-alpha still pretty early still undergoing changes but you will need 4.
0 if you want to play with that so if you want to do the tutorial and sample code that we have online or play around with any of the ideas and some of the talks and articles that have been posted about that next background location so what are the three most important things for user privacy it's got to be a location location location right so it's really important to make sure that the user not only gives the appropriate permission when their location is going to be used but also knows what's going on in the system there have been a bunch of changes for privacy in the last three releases where we are trying to make that clear to the user and to developers exactly what the rules are and when applications and developers can get access to that location and how the user can find out that that access is happening in either grant or deny it appropriately so we are continuing to make changes in location with you know each release make sure that this is the right thing to do for users and we created a new guide we know that it can be complicated to deal with all this information make sure that you know well I do need the location in the background how do I get that location how do i propagate that information to the user so there's a new guide on the site that you should check out this link as all links that I talked about I'm not going to give you a URL that would be silly instead go to the article now in Android number 13 all of the links are in there so if you like what you hear in the video go to the article check it out click on the link all right next up dynamic feature modules so this is a really powerful feature if you want to decrease the size of the initial download and install make it easier and faster for users to actually get your applications wouldn't it be nice if you could put things in optional modules so that they didn't have to come down on first install instead they can come down later you know when and if they're actually needed so although that's great but testing those was a little bit tricky you actually needed to upload a bundle to the Play Store in order to test the flow so Wojtek call each insky has works on with the play core team and on a new version to play core library to make that a lot easier there's an article about that that he wrote you'll need 1 dot 6.
5 of the play core library I think that's currently in alpha and there's also new documentation that talks about the stuff to make it easier for you to do the testing that you need to do with dynamic feature modules next up material motion so the material design team has posted a new guide for dealing with motion with material so animation is really powerful right in particular it's really good at helping users understand transitions between potentially complicated you is right if you can actually bring the user from one state to the other then they can go on that journey with you instead of trying to figure out where they are now and how they got there so that's the good part the bad part is it can be really complicated to implement these things lots of API is lots of library it's lots of approaches for doing these things and guides from the material team but somehow it wasn't obvious how you could do some of this stuff so they've come out with a new guide that's more specific about doing things like activity transitions not only that but they've also enhanced the material components library with transitions capability so you can actually start from their library from their API s and these built-in capabilities to build in those transitions into your own application so check out the new documentation the guide and the article and certainly the library for that there's been a few articles posted that are worth checking out for developers Nick butcher had a couple of articles posted he has an ongoing series called Android styling where he's talking about themes and attributes and styles and how they differ and how they're the same and how you should use them so he's got two articles there this last time common theme attributes it's how you should use these theme attributes for things like colors common things that you're doing instead of hard-coding that information and then the next one is called prefer theme attributes again sort of harping on that same theme of using attributes for common things like colors in your app instead of using resource references so they provide a lot more flexibility as well as semantic clarification for your application your code and then also Shawn McLellan posted an article on view binding so I mentioned this earlier for the 3.
6 release now you can use view binding instead of fine view by ID in in fact we kind of recommend it you you should use this it really cleans up your code and is a better approach than some of the other approaches out there so now you can use it in the full release of that tool and now with Sean's article you can find out how you actually do this how it works now you can integrate it into your application biometric prompts there's a new article from SAE dummy a which talks about how biometrics relates to cryptography they are not the same thing but they can work together to make sure that they protect your data in in a very secure way so there's an article that I wrote and then there's the sample links from that article as well that you can check out speaking of biometrics ISA also wrote a new sample for biometric login so if you are trying to figure out how to integrate biometrics and biometric login at your application be sure to check that out and then finally we have some new videos out there Nick butcher posted a long issue video on vector asset so we as a developer relations team and engineers here we'll go out and we'll give these conference talks and you know write these slides sort of encapsulate our thoughts about how things work into a presentation give that presentation at a conference hopefully it's recorded and then hopefully it's posted but there's sort of this diminishing returns of like well how big was the audience that saw it that saw the video posted we thought for some of the more important things that we do why don't we actually rerecord those in an optimized way in the studio and then post that and share it on the channel to make sure that all the information gets out there to all the developers that want it so the first one of these that we're doing is this talk that Nick butcher did recently on vector assets it's about using vector format instead of the more traditional sort of PNG format for images that way you can get these resizable sharp images and you can also have powerful ways of animating those images over time using things like vector drawable and animated vector drawable so this talk covers the technical details of that and then there's also a video from Florina Montana you where she talks about sealed classes nice language feature from Colin it has capabilities that are similar to in news but builds in a lot more flexibility than noobs give you so you only want standards and constrained set of values but you want more capabilities from sub classing from just more flexibility in general than the sort of data structure format that a pneumo you so that's it for this time we'll be back next time and in the meantime if you liked what you heard go ahead and share and like the video and please subscribe to the Android developers channel on YouTube thanks you [Music].