tag:blogger.com,1999:blog-10521085479980824652024-03-18T20:53:50.949-07:00Android Developers BackstageAndroid Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comBlogger159125tag:blogger.com,1999:blog-1052108547998082465.post-29457188964923456762021-03-24T14:02:00.001-07:002021-03-24T14:02:49.847-07:00The ADB podcast has moved to Libsyn<p> Hey ADB listeners!</p><p>After nearly 7.5 years and 158 episodes since <a href="http://androidbackstage.blogspot.com/2013/11/android-developers-backstage-episode-1.html">that first one on KitKat</a>, we've decided to relocate our show notes and feed to <a href="http://adbackstage.libsyn.com/">Libsyn</a>.</p><p>This should give us great distribution (including landing on Spotify, which some of you have asked for), while not sacrificing anything we get from blogger (show notes, the feed, mp3 downloads, the sometimes-awkward pictures of hosts and guests... i<br />t'll all be there).</p><p>This change should have zero visible impact on you. You should not need to subscribe to a new feed to get ADB; it should update automatically and you'll get the new episodes from the new location.</p><p>So if you want the show notes for ADB 159, or any of our future episodes, head over to <a href="http://adbackstage.libsyn.com">adbackstage.libsyn.com</a>, the new address for your favorite (and only!) Android Developers Backstage podcast content.</p><p>And keep listening... because we'll keep talking.</p><p><br /></p><div class="separator" style="clear: both; text-align: left;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhldH214V-V30rgvno14xMVAKRGUzTZQYkZ8q-3iyYclOC3giQ56p6eHVxm8K123C78cd0SYN3kefkbMmXteOwkGJd5LZ4MnRNzyQ4_ZeOjVFRkMOwoOtEHytZM0wlDVUVtezvjEhXJjMI/s3250/Android_Devs_Backstage_Banner.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="968" data-original-width="3250" height="141" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhldH214V-V30rgvno14xMVAKRGUzTZQYkZ8q-3iyYclOC3giQ56p6eHVxm8K123C78cd0SYN3kefkbMmXteOwkGJd5LZ4MnRNzyQ4_ZeOjVFRkMOwoOtEHytZM0wlDVUVtezvjEhXJjMI/w541-h141/Android_Devs_Backstage_Banner.png" width="541" /></a></div><p></p>Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-74489560448538178772021-03-15T15:02:00.001-07:002021-03-15T15:02:58.164-07:00Episode 158: Jetpack Compose... C'est bêta !<div class="separator" style="clear: both; text-align: right;"><br /></div><div><table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUPRyebePZTw6k9LA4KR428DtBpDc35Ks_-c82JNyBxCYHpZJaIKT9Rl4jJuIMu14T3VnLmRUZ7JYdy2iIkptZ96QZI1pTJyVtGfSFnrt-R021WeF7ivp-oFiNWEDn2feQtYlUQKrqozk/s2794/Screen+Shot+2021-02-19+at+10.08.47+AM.png" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" data-original-height="550" data-original-width="1046" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUPRyebePZTw6k9LA4KR428DtBpDc35Ks_-c82JNyBxCYHpZJaIKT9Rl4jJuIMu14T3VnLmRUZ7JYdy2iIkptZ96QZI1pTJyVtGfSFnrt-R021WeF7ivp-oFiNWEDn2feQtYlUQKrqozk/s2794/Screen+Shot+2021-02-19+at+10.08.47+AM.png" width="320" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;"><i>Chet, Nick, Clara, Leland, Tor, Adam, and Romain.<br />So many guests!</i></td></tr></tbody></table><div>This time, Tor, Romain, and Chet chatted with a few people on the Jetpack Compose team, about... Jetpack Compose!</div><div><br /></div><div>Compose hit Beta a couple of weeks ago (don't believe me? Check out the recent <a href="https://landing.google.com/theandroidshow/">Android show on Compose Show</a>!), so we took the opportunity to talk to some of the people that have helped build it. We talk about the current state of the library, but also about some of the design decisions that went into developing the APIs and functionality.</div></div><div><br /></div><div><i>(Note on the audio quality for this episode - it turns out that mixing so many people, all of whom recorded themselves separately using very different hardware and setups was... tricky. It's listenable, but maybe a tad below the level we shoot for. Blame the pandemic. I do.)</i></div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on">
Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20158%20Jetpack%20Compose%20Beta.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep158-ComposeBeta.mp3']);" target="_blank">audio file</a> directly.<br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><a href="https://landing.google.com/theandroidshow/">#TheAndroidShow: Jetpack Compose</a></div><div dir="ltr" style="text-align: left;" trbidi="on"><a href="https://developer.android.com/jetpack/compose">The Jetpack Compose site</a> (overview, tutorial, docs, samples, and more)</div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><b>Chet</b>: <a href="https://twitter.com/chethaase" target="_blank">@chethaase</a></div><div dir="ltr" style="text-align: left;" trbidi="on">
<b>Romain</b>: <a href="https://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<b>Tor</b>: <a href="https://twitter.com/tornorbye" target="_blank">@tornorbye</a></div><div dir="ltr" style="text-align: left;" trbidi="on"><b>Nick</b>: <a href="https://twitter.com/crafty">@crafty</a></div><div dir="ltr" style="text-align: left;" trbidi="on"><b>Clara</b>: <a href="https://twitter.com/clarabayarri">@clarabayarri</a></div><div dir="ltr" style="text-align: left;" trbidi="on"><b>Leland</b>: <a href="https://twitter.com/intelligibabble">@intelligibabble</a></div><div dir="ltr" style="text-align: left;" trbidi="on"><b>Adam</b>: <a href="https://twitter.com/adamwp">@adamwp</a><div style="text-align: center;"><br /><i>Thanks to our audio engineer, Dustin Elm, who has handled all of our audio mixing<br />for the last couple of years, including the tricky part of mixing all of our remote-<br />recorded episodes, like this one.<br />Dustin's moving on to (greener? softer? louder?) pastures, so we'll be using<br />a new, exciting process for mixing future episodes. Thanks, Dustin!</i></div></div><br />Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-82275433647432705492021-03-03T06:30:00.001-08:002021-03-03T06:30:03.777-08:00Episode 157: Audio feedback<div dir="ltr" style="text-align: left;" trbidi="on"><div dir="ltr" trbidi="on"><table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgy5QguH27kzgF0qlwd16UpzTUz4LPJgfk8aKKXbiUhv2wFGwaaekutjI2a_vGBqwEV2DPthnrsbH7_q9H6pynPbNhdA-4iYnvySkWnrS36pBYD0pLzaJWSb0z2Ws8aw6y8iRQ3oFGwKFI/s1778/Screen+Shot+2021-03-01+at+12.07.57+PM.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" data-original-height="1570" data-original-width="1778" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgy5QguH27kzgF0qlwd16UpzTUz4LPJgfk8aKKXbiUhv2wFGwaaekutjI2a_vGBqwEV2DPthnrsbH7_q9H6pynPbNhdA-4iYnvySkWnrS36pBYD0pLzaJWSb0z2Ws8aw6y8iRQ3oFGwKFI/s320/Screen+Shot+2021-03-01+at+12.07.57+PM.png" width="320" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">What does a podcast look like? We don't know,<br />so here's a picture of the podcast's website</td></tr></tbody></table>We want to hear from you! In this episode,<br /></div><div dir="ltr" trbidi="on">Tor, Romain, and Chet talk about what they could do — or not do —to improve Android Developers Backstage.</div><div dir="ltr" trbidi="on"><br /></div><div dir="ltr" trbidi="on">Please check our <a href="https://forms.gle/afbXmd7S1DfjmhnF7" target="_blank">survey</a> and let us know how you would like to see this podcast evolve. We recommend you first listen to the podcast to get the full context for some of the questions in the survey.</div><div dir="ltr" trbidi="on"><br /></div><div dir="ltr" trbidi="on">Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20157%20Audio%20feedback.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep157-AudioFeedback.mp3']);" target="_blank">audio file</a> directly.</div><div dir="ltr" trbidi="on"><br /></div><div dir="ltr" trbidi="on"><div dir="ltr" trbidi="on"><b>Chet</b>: <a href="https://twitter.com/chethaase" target="_blank">@chethaase</a></div><div dir="ltr" trbidi="on"><b>Romain</b>: <a href="https://twitter.com/romainguy" target="_blank">@romainguy</a><br /><b>Tor</b>: <a href="https://twitter.com/tornorbye" target="_blank">@tornorbye</a></div></div><div class="separator" style="clear: both; text-align: right;"><br /></div></div><div dir="ltr" style="text-align: left;" trbidi="on"><div style="text-align: center;"><br /><br /><i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.
</i></div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-80961711246425771442021-02-19T16:32:00.000-08:002021-02-19T16:32:41.622-08:00Episode 156: Android Runtime Classic (Dalvik)<div dir="ltr" style="text-align: left;" trbidi="on"><div class="separator" style="clear: both; text-align: right;"><br /></div>It's history time! Or even [pre-]ART History time!<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjni5PerhBc1BbBqndTDcjlNrAx4CzlotPNLyizNX_lOuVx8omzRURV3y6MEXVJ84mhwNahfmDn60IVLuPqJmI9dUsECjKkqF7AQnX7SyeoKr6Phhu4GfIpPdtn_ruanvbGh-BVThCJBxI/s1046/Screen+Shot+2021-02-19+at+3.17.04+PM.png" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" data-original-height="550" data-original-width="1046" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjni5PerhBc1BbBqndTDcjlNrAx4CzlotPNLyizNX_lOuVx8omzRURV3y6MEXVJ84mhwNahfmDn60IVLuPqJmI9dUsECjKkqF7AQnX7SyeoKr6Phhu4GfIpPdtn_ruanvbGh-BVThCJBxI/s320/Screen+Shot+2021-02-19+at+3.17.04+PM.png" width="320" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;"><i>We didn't take a picture this time.<br />Please imagine what we looked like.</i></td></tr></tbody></table></div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on">This time, Tor, Romain, and Chet were joined by Dan Bornstein, one of the early members of the Android team. Dan joined in 2005 to create a runtime for Android, which became Dalvik.</div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on">We talked about some of the early placeholder VMs used while Dalvik was coming online, some of the design decisions for Dalvik (like its register-based vs. stack-based implementation), and nice techy details about runtimes, garbage collectors, and optimizations.</div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on">
Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20156%20Android%20Runtime%20Classic.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep156-Dalvik.mp3']);" target="_blank">audio file</a> directly.<br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><b>Chet</b>: <a href="https://twitter.com/chethaase" target="_blank">@chethaase</a></div><div dir="ltr" style="text-align: left;" trbidi="on">
<b>Romain</b>: <a href="https://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<b>Tor</b>: <a href="https://twitter.com/tornorbye" target="_blank">@tornorbye</a></div><div dir="ltr" style="text-align: left;" trbidi="on"><b>Dan</b>: <a href="https://twitter.com/danfuzz">@danfuzz</a><br />
<div style="text-align: center;">
<br /><br /><i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.
</i></div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-45076427319607254422021-02-02T18:14:00.000-08:002021-02-02T18:14:28.314-08:00Episode 155: WindowManagerManagers<div dir="ltr" style="text-align: left;" trbidi="on"><div class="separator" style="clear: both; text-align: right;"><br /><br /></div><table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgRfcDeeHJro3qijnC9gXZ1PHcyWBoBuYjebM1UUm2ZbKOQdOEFiEurrx10Y5dZJXySsRTXaX_Byh3xMxnUIKvChCuuFX-pErO3TOKfLC8ltWypBP97BfQDl5Vw5NBRtTAGPtUfdeaAwQ/s2736/WindowManagerPodcastPicture.png" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" data-original-height="1149" data-original-width="2736" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgRfcDeeHJro3qijnC9gXZ1PHcyWBoBuYjebM1UUm2ZbKOQdOEFiEurrx10Y5dZJXySsRTXaX_Byh3xMxnUIKvChCuuFX-pErO3TOKfLC8ltWypBP97BfQDl5Vw5NBRtTAGPtUfdeaAwQ/s320/WindowManagerPodcastPicture.png" width="320" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Top row: Chet, Romain, Rob.<br />Bottom row: Wale, Tor.</td></tr></tbody></table></div><div dir="ltr" style="text-align: left;" trbidi="on">In this episode, we chat with Wale Ogunwale and Rob Carr from the Android Framework team about the Window Manager.</div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on">Tune in to learn about the evolution of the window manager, the distinction between System UI and the window manager, implementation challenges and recent architectural changes.</div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on">
Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20155%20WindowManagerManagers.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep155-WindowManagerManager.mp3']);" target="_blank">audio<br /> file</a> directly.<br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><b>Chet</b>: <a href="https://twitter.com/chethaase" target="_blank">@chethaase</a></div><div dir="ltr" style="text-align: left;" trbidi="on">
<b>Romain</b>: <a href="https://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<b>Tor</b>: <a href="https://twitter.com/tornorbye" target="_blank">@tornorbye</a><div style="text-align: center;"><br /><i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.
</i></div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-76368762800451706052020-12-23T06:30:00.006-08:002020-12-23T06:30:07.330-08:00Episode 154: It's a Wrap!<div dir="ltr" style="text-align: left;" trbidi="on"><div class="separator" style="clear: both; text-align: right;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgOyoy_V8-xeGKeFangJr0-n5kQhd2L5mgESdUZw3HUVsoGT7bV1F-c8cJbYeZFsauJQVQeNacRnYA6cNZm7EZQSaBdd15Lhy_ZfcSx7kILyunyTP5kbRw6wyL8y6erV2RJe6z_AXxwzOk/s1584/Screen+Shot+2020-12-09+at+3.18.37+PM.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" data-original-height="1033" data-original-width="1584" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgOyoy_V8-xeGKeFangJr0-n5kQhd2L5mgESdUZw3HUVsoGT7bV1F-c8cJbYeZFsauJQVQeNacRnYA6cNZm7EZQSaBdd15Lhy_ZfcSx7kILyunyTP5kbRw6wyL8y6erV2RJe6z_AXxwzOk/s320/Screen+Shot+2020-12-09+at+3.18.37+PM.png" width="320" /></a></div>This episode is dedicated to the memory of our dear friend and colleague, Carl Quinn.</div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on">Our last episode of the year arrives just in time for the holiday season. In this episode, Tor, Chet, and Romain go over everything that happened in 2020, both good and bad. We look back at how conferences have been impacted by the pandemic, why Android Studio changed its versioning scheme, the new tools and libraries that were released, etc.</div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on">We would like to thank all of our listeners for their continued support. We'll be back in early 2021 with more episodes and new guests!</div><div dir="ltr" style="text-align: left;" trbidi="on"><div class="separator" style="clear: both; text-align: center;"><br /></div></div><div dir="ltr" style="text-align: left;" trbidi="on">
Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20154%20It's%20a%20Wrap.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep153-OkOkOk.mp3']);" target="_blank">audio<br /> file</a> directly.<br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><b>Chet</b>: <a href="https://twitter.com/chethaase" target="_blank">@chethaase</a></div><div dir="ltr" style="text-align: left;" trbidi="on">
<b>Romain</b>: <a href="https://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<b>Tor</b>: <a href="https://twitter.com/tornorbye" target="_blank">@tornorbye</a>
<div style="text-align: center;">
<br /><br /><i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.
</i></div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-64834992964267803382020-12-09T15:27:00.000-08:002020-12-09T15:27:25.692-08:00Episode 153: Ok, Ok, Ok<div dir="ltr" style="text-align: left;" trbidi="on">Romain, Tor, and Chet talked with Jesse Wilson from Square. Jesse has worked on several popular open-source libraries, including OkHttp, Okio, and [Ok]Moshi. We talk about those libraries, and others, and about Android, library, framework and Kotlin development. And about that nasty habit some engineers have of turning a feature request or minor annoyance into a project of creating a new open-source library instead.</div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on">Favorite quote, from Jesse:</div><div dir="ltr" style="text-align: left;" trbidi="on"><i>"I started with 2k. Someone told me 8k was faster."</i></div><div dir="ltr" style="text-align: left;" trbidi="on"><br /><div class="separator" style="clear: both; text-align: center;"><br /></div></div><div dir="ltr" style="text-align: left;" trbidi="on">
Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20153%20Ok%20Ok%20Ok.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep153-OkOkOk.mp3']);" target="_blank">audio file</a> directly.<br />
<br /><br /><b>Links</b>:</div><div dir="ltr" style="text-align: left;" trbidi="on"><div dir="ltr" trbidi="on"><br /></div><div dir="ltr" trbidi="on"><a href="https://square.github.io/okhttp/">OkHttp</a></div><div dir="ltr" trbidi="on"><a href="https://cashapp.github.io/2019-06-26/okhttp-4-goes-kotlin">OkHttp Kotlin Release</a></div><div dir="ltr" trbidi="on"><a href="https://github.com/square/okio">Okio</a></div><div dir="ltr" trbidi="on"><a href="https://github.com/square/okio/blob/master/okio/src/commonMain/kotlin/okio/internal/Buffer.kt">Okio Buffer.kt internals</a></div><div dir="ltr" trbidi="on"><a href="https://www.graalvm.org/">GraalVM</a></div><div><br /></div></div><div dir="ltr" style="text-align: left;" trbidi="on"><b>Jesse</b>: <a href="https://twitter.com/jessewilson">@jessewilson</a></div><div dir="ltr" style="text-align: left;" trbidi="on"><b>Chet</b>: <a href="https://twitter.com/chethaase" target="_blank">@chethaase</a><br />
<b>Romain</b>: <a href="https://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<b>Tor</b>: <a href="https://twitter.com/tornorbye" target="_blank">@tornorbye</a>
<div style="text-align: center;">
<br /><br /><i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.
</i></div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-65894444517853682682020-11-11T06:00:00.003-08:002020-11-12T08:54:38.811-08:00Episode 152: Image Loading with Coil<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEilKz29p703RnD8bpbL-coKBo5X5ujJDSlC5DMstOWlL1mwiur34OWGjRT8VV_KSVieNIqUuSudHuKkmSitywEcB-cQCIPQs3NpFQadRsbjtS148pO6iHGjwlKE7Ej0nh6qs6-PLzC6XDI/s1432/Screen+Shot+2020-10-28+at+2.54.55+PM.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" data-original-height="781" data-original-width="1432" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEilKz29p703RnD8bpbL-coKBo5X5ujJDSlC5DMstOWlL1mwiur34OWGjRT8VV_KSVieNIqUuSudHuKkmSitywEcB-cQCIPQs3NpFQadRsbjtS148pO6iHGjwlKE7Ej0nh6qs6-PLzC6XDI/s320/Screen+Shot+2020-10-28+at+2.54.55+PM.png" width="320" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Chet, Colin, Romain, and Tor<br /></td></tr></tbody></table><div dir="ltr" style="text-align: left;" trbidi="on">This week, Tor, Romain and Chet are joined by a special guest: Colin White from Instacart.</div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on">Colin is the author of Coil, a popular image loading library backed by Kotlin and Kotlin Coroutines. In this episode, Colin explains what Coil is, how and why it was created, etc.</div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><div class="separator" style="clear: both; text-align: center;"><br /></div></div><div dir="ltr" style="text-align: left;" trbidi="on">
<br />
Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20152%20Image%20Loading%20with%20Coil.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep151-Paging3.mp3']);" target="_blank">audio file</a> directly.<br />
<br /><br /><b>Links</b>:</div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><a href="https://coil-kt.github.io/coil/">Coil</a></div><div dir="ltr" style="text-align: left;" trbidi="on"><a href="https://github.com/coil-kt/coil/">Coil on GitHub</a></div><div dir="ltr" style="text-align: left;" trbidi="on"><a href="https://github.com/coil-kt/coil/issues/568">The feature request Romain filed</a></div><div dir="ltr" style="text-align: left;" trbidi="on"><a href="https://github.com/coil-kt/coil/pull/569">And the PR to implement that feature request</a></div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><b>Colin</b>: <a href="https://twitter.com/colinwhi">@colinwhi</a></div><div dir="ltr" style="text-align: left;" trbidi="on"><b>Chet</b>: <a href="https://twitter.com/chethaase" target="_blank">@chethaase</a><br />
<b>Romain</b>: <a href="https://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<b>Tor</b>: <a href="https://twitter.com/tornorbye" target="_blank">@tornorbye</a>
<div style="text-align: center;">
<br /><br /><i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.
</i></div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-26609337814232803772020-10-28T10:00:00.001-07:002020-10-28T10:00:05.846-07:00Episode 151: Paging3<div dir="ltr" style="text-align: left;" trbidi="on">
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixsFqbIjtqppKtW6W_sEjf9kUa5NsXeJ_0XzjhrWmRNmRmHYy-wI24QKZbN4oyT0oa-NkbhA3ETgse0qrDK8rTKbloY_4SShbN3CG37iTsMiSaTR4ix6KLHWpjcFZYHww1Vi0cTCi3kq0/s1440/Screen+Shot+2020-10-14+at+2.57.43+PM.png" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="779" data-original-width="1404" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixsFqbIjtqppKtW6W_sEjf9kUa5NsXeJ_0XzjhrWmRNmRmHYy-wI24QKZbN4oyT0oa-NkbhA3ETgse0qrDK8rTKbloY_4SShbN3CG37iTsMiSaTR4ix6KLHWpjcFZYHww1Vi0cTCi3kq0/s320/Screen+Shot+2020-10-14+at+2.57.43+PM.png" width="320" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Chet, Dustin, Chris, and Romain.<br />(Tor not pictured. Because he wasn't there)</td></tr></tbody></table>Romain and Chet talked with Dustin Lam and Chris Craik from the Toolkit team about Paging3.</div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on">Paging3 (currently in alpha) is a complete rewrite of (wait for it...) Paging2, using Kotlin, coroutines, and Flow for optimal implementation and APIs. (But note that there are also APIs for developers using the Java programming language and/or RxJava, so take your pick). We talk about Paging, the asynchronous work that made coroutines an obvious choice for the implementation, recent and future features, and API design in general.<br /><div class="separator" style="clear: both; text-align: center;"><br /></div></div><div dir="ltr" style="text-align: left;" trbidi="on">
<br />
Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20151%20Paging3.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep151-Paging3.mp3']);" target="_blank">audio file</a> directly.<br />
<br /><br /><b>Links</b>:</div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><a href="https://developer.android.com/jetpack/androidx/releases/paging">AndroidX Paging library</a></div><div dir="ltr" style="text-align: left;" trbidi="on"><a href="http://goo.gle/androidx-bug-bounty">Bug bounty hotlist!</a></div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on"><b>Dustin</b>: <a href="https://twitter.com/itsdustinlam">@itsdustinlam</a></div><div dir="ltr" style="text-align: left;" trbidi="on"><b>Chris</b>: <a href="https://twitter.com/chris_craik">@chris_craik</a><br />
<b>Chet</b>: <a href="https://twitter.com/chethaase" target="_blank">@chethaase</a><br />
<b>Romain</b>: <a href="https://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<b>Tor</b>: <a href="https://twitter.com/tornorbye" target="_blank">@tornorbye</a>
<div style="text-align: center;">
<br /><br /><i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.
</i></div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-26085839351754533942020-10-13T17:01:00.000-07:002020-10-13T17:01:24.695-07:00Episode 150: Aaptly Named<div dir="ltr" style="text-align: left;" trbidi="on">
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhnmKsIuB9TuircKC8o3jhdboA_ci5vXTAAvVdV9jGMkOqradfqdt55pkuyT8fud1_LqbMY65tPNKZVv8KCpVF4sf6lceoDpolfO7Ke09b87v9nVJ2FK8Rn_BTpFuHunlcOKQOcSE4vej0/s2048/episode-aapt.png" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="779" data-original-width="1404" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhnmKsIuB9TuircKC8o3jhdboA_ci5vXTAAvVdV9jGMkOqradfqdt55pkuyT8fud1_LqbMY65tPNKZVv8KCpVF4sf6lceoDpolfO7Ke09b87v9nVJ2FK8Rn_BTpFuHunlcOKQOcSE4vej0/s320/episode-aapt.png" width="320" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Top row: Tor and Romain<br />Bottom row: Ryan and Chet</td></tr></tbody></table>
In this episode, Chet, Romain and Tor talk with Ryan Mitchell from the Android Framework Team.</div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on">We cover the Android resources in general and the aapt2 tool in particular.<br />
<br />
Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20150%20Aaptly%20Named.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep150-AaplyNamed.mp3']);" target="_blank">audio file</a> directly.<br />
<br />
<b>Chet</b>: <a href="https://twitter.com/chethaase" target="_blank">@chethaase</a><br />
<b>Romain</b>: <a href="https://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<b>Tor</b>: <a href="https://twitter.com/tornorbye" target="_blank">@tornorbye</a>
<div style="text-align: center;">
<br /><br /><i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.
</i></div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-42494721643173167572020-09-30T16:52:00.004-07:002020-09-30T16:54:19.151-07:00Episode 149: ADB over WiFi on ADB<div dir="ltr" style="text-align: left;" trbidi="on">
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgbwnUjhZE9gow490rNVZJZ9G4SCA4SRkVN72bcvaD8iGuwOBeOn7rL9kpfTrOiEWudJU7ALu4FwY46KkGLwSLNXzw9vQFhn3TNwoZQfeKKaRi4YlOZPl9Bfqrz48zUN-o9GVDbdGZ29RA/s1404/adb-149.png" style="margin-left: auto; margin-right: auto;"><img border="0" data-original-height="779" data-original-width="1404" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgbwnUjhZE9gow490rNVZJZ9G4SCA4SRkVN72bcvaD8iGuwOBeOn7rL9kpfTrOiEWudJU7ALu4FwY46KkGLwSLNXzw9vQFhn3TNwoZQfeKKaRi4YlOZPl9Bfqrz48zUN-o9GVDbdGZ29RA/s320/adb-149.png" width="320" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;">Top row: Chet, Joshua and Romain.<br />Bottom row: Renaud and Tor</td></tr></tbody></table>
In this episode, Chet, Romain and Tor talk with Renaud Paquay and Joshua Duong from the Android Studio and Android Emulator teams.</div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on">We cover the new ADB over WiFi feature in Android 11, and the Android Studio support for pairing and connecting.<br />
<br />
Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20149%20ADB%20over%20WiFi.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep149-ADB-WiFi.mp3']);" target="_blank">audio file</a> directly.<br />
<br />
<h3 style="text-align: left;">
Links</h3>
<div>
<ul style="text-align: left;">
<li><a href="https://developer.android.com/studio/command-line/adb#connect-to-a-device-over-wi-fi-android-11+">https://developer.android.com/studio/command-line/adb#connect-to-a-device-over-wi-fi-android-11+</a></li></ul></div>
<b>Renaud</b>: <a href="https://www.reddit.com/user/adt_renaud" target="_blank">/u/adt_renaud</a><br />
<b>Joshua</b>: <a href="https://twitter.com/chethaase" target="_blank">/u/joshuaduong</a><br />
<b>Chet</b>: <a href="https://twitter.com/chethaase" target="_blank">@chethaase</a><br />
<b>Romain</b>: <a href="https://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<b>Tor</b>: <a href="https://twitter.com/tornorbye" target="_blank">@tornorbye</a>
<div style="text-align: center;">
<br /><br /><i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.</i></div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-80672187912674535662020-09-16T12:36:00.000-07:002020-09-16T12:36:44.940-07:00ADB 148: [Constraint|Motion][Layout|Editor]<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="separator" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em; text-align: center;"><img border="0" data-original-height="740" data-original-width="1428" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDEVWAWdAututRCI7l-Q1jrPlvMl5Yj-MAvZ7hFyVlR1zwsaS21iUXeV0T_DsPsdI-T7GTY7b4XbCWWQFGlS5y4vDABexbir76jrTuoxNaVo9-aQ0ObkZbL0a5Rqo_ZMhw8qEn_oOtvvs/s320/Screen+Shot+2020-09-02+at+2.43.28+PM.png" width="320" /></div><p class="graf graf--p" name="ad64" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"></p>Sean McQuillan and I talked with Nicolas Roard and John Hoford about MotionEditor, which <a class="markup--anchor markup--p-anchor" data-href="https://android-developers.googleblog.com/2020/07/introducing-motion-editor.html" href="https://android-developers.googleblog.com/2020/07/introducing-motion-editor.html" rel="noopener" target="_blank">went stable recently</a> in Android Studio 4.0. But as long as we were talking about that tool, we also talked extensively about MotionLayout in general as well as ConstraintLayout, new features like Flow, the difficulties of animating text properties, and more.</div><div dir="ltr" style="text-align: left;" trbidi="on"><br /></div><div dir="ltr" style="text-align: left;" trbidi="on">Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20148%20ConstraintMotionLayoutEditor.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep148-ConstraintMotionLayoutEditor.mp3']);" target="_blank">audio file</a> directly.<br />
<br />
<h3 style="text-align: left;">
Links</h3>
<div><a href="https://www.youtube.com/playlist?list=PLWz5rJ2EKKc-bcyUTIFAr97ZtRkwM7S4y">MotionTags</a> screencast series</div><div><a href="https://developer.android.com/studio/write/motion-editor">MotionEditor</a> guide</div><div><a href="https://android-developers.googleblog.com/2020/07/introducing-motion-editor.html">MotionEditor release</a> article</div><div><a href="https://developer.android.com/training/constraint-layout">ConstraintLayout</a> guide</div><div><a href="https://medium.com/androiddevelopers/introducing-constraint-layout-2-0-9daa3e99995b">ConstraintLayout 2.0</a> article</div>
<div><br /></div><div><b>John</b>: <a href="https://twitter.com/johnhoford">@johnhoford</a></div><div><b>Nicolas</b>: <a href="https://twitter.com/camaelon">@camaelon</a><br />
<b>Chet</b>: <a href="http://twitter.com/chethaase" target="_blank">@chethaase</a></div>
<b>Tor</b>: <a href="http://twitter.com/tornorbye" target="_blank">@tornorbye</a><br />
<b>Romain</b>: <a href="http://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<div style="text-align: center;">
<i><br /></i><i><br /></i><i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.</i></div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-63374411107392884562020-08-27T10:00:00.000-07:002020-08-27T10:00:02.611-07:00Episode 147: Jetpack Compose Alpha<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: right;">
</div>
<div style="text-align: right;">
</div>
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhVqjXzDE1axDofeteV3Ns9vZvoBDfXCOzJorQAgnT0EY8hq3lvj0Fn41gbixUNKN8wsOJ29tHSubAQTyfIlmIFNa7Afl53EJom4dGhN0lusth0HQ3Qb95v-gaE2qowt5t9-4iUarFNNwg/s1600/JetpackCompose_logo.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" data-original-height="900" data-original-width="1600" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhVqjXzDE1axDofeteV3Ns9vZvoBDfXCOzJorQAgnT0EY8hq3lvj0Fn41gbixUNKN8wsOJ29tHSubAQTyfIlmIFNa7Afl53EJom4dGhN0lusth0HQ3Qb95v-gaE2qowt5t9-4iUarFNNwg/s320/JetpackCompose_logo.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">The real star of the show: Jetpack Compose</td></tr>
</tbody></table>
This week, after a long series of developer previews, we are celebrating the release of Jetpack Compose alpha. In this episode, Clara Bayarri, Matvei Malkov, and Anna-Chiara Bellini are joining Chet and Romain to talk about this milestone. You will learn more about what does the alpha mean to the team, where did Compose come from, how the team approaches API design, some of the challenges behind building a new UI toolkit, and much more.<br />
<br />
Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20147%20Jetpack%20Compose.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep146-GameChanger.mp3']);" target="_blank">audio file</a> directly.<br />
<br />
<h3 style="text-align: left;">
Links</h3>
<div>
<a href="https://developer.android.com/jetpack/compose">Jetpack Compose</a><br />
<a href="https://developer.android.com/courses/pathways/compose">Tutorials and codelabs</a></div>
<div>
<a href="https://developer.android.com/jetpack/compose/setup">Android Studio Setup</a><br />
<a href="https://github.com/android/compose-samples">Samples on GitHub</a><br />
<a href="https://www.youtube.com/watch?v=SMOhl9RK0BA">Thinking in Compose (video)</a></div>
<div>
<br />
<b>Chet</b>: <a href="http://twitter.com/chethaase" target="_blank">@chethaase</a></div>
<b>Tor</b>: <a href="http://twitter.com/tornorbye" target="_blank">@tornorbye</a><br />
<b>Romain</b>: <a href="http://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<div style="text-align: center;">
<i><br /></i><i><br /></i><i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.</i></div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-60517392006356733242020-08-19T10:55:00.000-07:002020-08-19T10:55:56.611-07:00Episode 146: The Game Changer<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: right;">
</div>
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzSDKzju7rNC7rrf4cd0NdsXyOt0a-yVNlZjjY5DFkJr04sznNDyh54a-hJDAJYL8XDeu7_HLKVnZtcdSlX7Et4Wdi1d3tHDnwWx3Wkj7r3CLtrHPlCWpz-696QHVXGvSYsCCUmad20h8/s1600/Screen+Shot+2020-08-05+at+2.29.36+PM.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" data-original-height="713" data-original-width="1600" height="142" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzSDKzju7rNC7rrf4cd0NdsXyOt0a-yVNlZjjY5DFkJr04sznNDyh54a-hJDAJYL8XDeu7_HLKVnZtcdSlX7Et4Wdi1d3tHDnwWx3Wkj7r3CLtrHPlCWpz-696QHVXGvSYsCCUmad20h8/s320/Screen+Shot+2020-08-05+at+2.29.36+PM.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Dan (played by an icon), Greg, and <br />
a tiny Romain in the upper right</td></tr>
</tbody></table>
This time, Romain was hosting all on his own for this conversation about game technology with Greg Hartrell, product manager for games on Play/Android, and Dan Galpin, developer advocate for games on Android. They talked about recent developments and offerings for game developers, including the Android development plugin for Visual Studio, other specialized tools for game developers, and new offerings from the team like Android Asset Delivery and Android App Bundle for distribution.<br />
<br />
Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20146%20the%20Game%20Changer.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep146-GameChanger.mp3']);" target="_blank">audio file</a> directly.<br />
<br />
<h3 style="text-align: left;">
Links</h3>
<div>
<a href="https://developer.android.com/games">Build Games for Android</a></div>
<div>
<a href="https://www.youtube.com/playlist?list=PLWz5rJ2EKKc9UA3vUgdf-TUj5IRr3YWV9">Android Game Dev Show</a></div>
<div>
<br />
<b>Greg</b>: <a href="https://twitter.com/ghartrell">@ghartrell</a></div>
<b>Dan</b>: <a href="https://twitter.com/dagalpin">@dagalpin</a><br />
<b>Chet</b>: <a href="http://twitter.com/chethaase" target="_blank">@chethaase</a><br />
<b>Tor</b>: <a href="http://twitter.com/tornorbye" target="_blank">@tornorbye</a><br />
<b>Romain</b>: <a href="http://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<div style="text-align: center;">
<i><br /></i><i><br /></i><i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.</i></div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-29688263194361295572020-07-21T13:40:00.000-07:002020-07-21T13:40:32.555-07:00Episode 145: Grab that Dagger by the Hilt<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: right;">
</div>
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkaNoBnZ-CmV2M9oNIkmfMrcbBSM7VK-WKPeSG-n5X8idJNne6n1G1xQ4-3GShJwczy1mlx_wdzM7HIex2Lr7N7Pfooi29y5vD5l25F3tFa3KX79Zuy2Fehdx7AaF_KoqRxz8MajB08Cg/s1600/Hilt.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" data-original-height="873" data-original-width="1476" height="189" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkaNoBnZ-CmV2M9oNIkmfMrcbBSM7VK-WKPeSG-n5X8idJNne6n1G1xQ4-3GShJwczy1mlx_wdzM7HIex2Lr7N7Pfooi29y5vD5l25F3tFa3KX79Zuy2Fehdx7AaF_KoqRxz8MajB08Cg/s320/Hilt.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Eric, Dany, and Romain. Chet not represented to hide the<br />
confused look he had on his face during the entire recording.</td></tr>
</tbody></table>
We're injecting dependencies! In this episode, Chet and Romain are joined by Daniel Santiago from Jetpack, and Eric Chang from Dagger to talk about Hilt. Hilt builds on Dagger for form Android's new recommended way to perform dependency injection. And it's also a great opportunity for Chet and Romain to display their lack of knowledge in that space.<br />
<br />
Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20145%20Hilt.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep140-Bubbles.mp3']);" target="_blank">audio file</a> directly.<br />
<br />
<h3 style="text-align: left;">
Links</h3>
<a href="https://dagger.dev/">Dagger.dev</a><br />
<a href="https://dagger.dev/hilt/">Hilt on dagger.dev</a><br />
<a href="https://www.youtube.com/watch?v=B56oV3IHMxg">Introduction to Hilt by Dany</a><br />
<a href="https://developer.android.com/training/dependency-injection">Dependency injection on Android</a><br />
<br />
<b>Chet</b>: <a href="http://twitter.com/chethaase" target="_blank">@chethaase</a><br />
<b>Tor</b>: <a href="http://twitter.com/tornorbye" target="_blank">@tornorbye</a><br />
<b>Romain</b>: <a href="http://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<div style="text-align: center;">
<i><br /></i><i><br /></i><i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.</i></div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-34853223717351381552020-07-14T11:01:00.000-07:002020-07-14T11:01:11.386-07:00Episode 144: Compilers<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: right;">
</div>
<div style="text-align: right;">
</div>
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj5cNsmQkv6QcLpxHkrKasckwbxRVROuS9fAnIHxCLutLEZzuz1VGlpPb9MAfuY75Q4fOQH_l9JXN_gSqu3EFb17qHy9pRdK8jsBpQ8Sa0Lm4n7BE8r_DhZKwKREtPuhwxecwt9Nv7ic0E/s1600/compilers.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" data-original-height="1600" data-original-width="948" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj5cNsmQkv6QcLpxHkrKasckwbxRVROuS9fAnIHxCLutLEZzuz1VGlpPb9MAfuY75Q4fOQH_l9JXN_gSqu3EFb17qHy9pRdK8jsBpQ8Sa0Lm4n7BE8r_DhZKwKREtPuhwxecwt9Nv7ic0E/s320/compilers.png" width="189" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Mads, Chet and Tor</td></tr>
</tbody></table>
In this episode, Chet and Tor talk with Mads Ager from the Android Studio compilers team. We cover a number of subjects, from r8 and d8 optimizations and resource shrinking to work on the Kotlin compiler front- and back-end, as well as the new Kotlin symbol processor.<br />
<br />
Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20144%20Compilers.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep144-Compilers.mp3']);" target="_blank">audio file</a> directly.<br />
<br />
<h3 style="text-align: left;">
Links</h3>
<div>
<ul style="text-align: left;">
<li>R8/D8: <a href="https://r8.googlesource.com/r8">https://r8.googlesource.com/r8</a></li>
<li>KSP: <a href="https://github.com/android/kotlin/tree/ksp/libraries/tools/kotlin-symbol-processing-api">https://github.com/android/kotlin/tree/ksp/libraries/tools/kotlin-symbol-processing-api</a></li>
<li>Kotlin: <a href="https://github.com/JetBrains/kotlin/">https://github.com/JetBrains/kotlin/</a></li>
</ul>
</div>
<div>
<br /></div>
<b>Mads</b>: <a href="https://twitter.com/madsager" target="_blank">@madsager</a><br />
<b>Chet</b>: <a href="https://twitter.com/chethaase" target="_blank">@chethaase</a><br />
<b>Tor</b>: <a href="https://twitter.com/tornorbye" target="_blank">@tornorbye</a><br />
<b>Romain</b>: <a href="https://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<div style="text-align: center;">
<i><br /></i><i><br /></i><i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.</i></div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-35615444225982852242020-06-30T10:04:00.000-07:002020-06-30T13:00:45.658-07:00Episode 143: Shhhh! Private!<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: right;">
</div>
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhc-kVxWmvbCep_uHaMHdZl4PPYcieeTLNtYA-0tasGNdnMVOZNKC7gtR3fRneo3g2XuWM6ZggUnBWrUrh82isMdiliKAdXtl5bAMIPLEYZLzn78S8BrAb4ZtbPRIyr4j7ZWDtALte2-ow/s1600/Screen+Shot+2020-06-24+at+2.25.13+PM.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" data-original-height="703" data-original-width="1242" height="181" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhc-kVxWmvbCep_uHaMHdZl4PPYcieeTLNtYA-0tasGNdnMVOZNKC7gtR3fRneo3g2XuWM6ZggUnBWrUrh82isMdiliKAdXtl5bAMIPLEYZLzn78S8BrAb4ZtbPRIyr4j7ZWDtALte2-ow/s320/Screen+Shot+2020-06-24+at+2.25.13+PM.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;"><i>Tor, Romain, Sara, Philip, and a little tiny Chet top-right</i></td></tr>
</tbody></table>
<br />
In this episode, Tor, Chet, and Romain talk with Sara N-Marandi and Philip Moltmann from the Android framework team about some of the new permissions changes in Android 11. We talk about why these changes were made, how to use them correctly in your code, and how things actually work on the inside.<br />
<br />
Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20143%20Shhh%20Private.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep143-ShhhhPrivate.mp3']);" target="_blank">audio file</a> directly.<br />
<br />
<h3 style="text-align: left;">
Links</h3>
<div>
<ul style="text-align: left;">
<li>Developer Guide: <a href="https://developer.android.com/training/permissions/requesting">Request App Permissions</a></li>
<li>Video: <a href="https://youtu.be/MXlVj-EYgIQ">Developing with the latest privacy changes in Android 11</a></li>
<li>Video: <a href="https://www.youtube.com/watch?v=5w5h_UdIiqs&list=PLWz5rJ2EKKc9hqKx4qZWolQxy59Bt20t_&index=7&t=0s">All things privacy in Android 11</a></li>
</ul>
</div>
<div>
<br /></div>
<b>Chet</b>: <a href="https://twitter.com/chethaase" target="_blank">@chethaase</a><br />
<b>Tor</b>: <a href="https://twitter.com/tornorbye" target="_blank">@tornorbye</a><br />
<b>Romain</b>: <a href="https://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<div style="text-align: center;">
<i><br /></i><i><br /></i><i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.</i></div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-38226280497315520282020-06-23T12:38:00.000-07:002020-06-23T12:38:53.511-07:00Episode 142: Machine Learning Learning<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: right;">
</div>
<br />
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgedS3-PZchBJWGVRvE_UQSi_S7HwOSvCC-wVTpfryWC4Fx7bWje0Br_kYWl6CRan-HAxrR9KYt277iWvY_FWaLNgBhVBxqJ5GvSGHiE-1JxntusK-Ov_dIZ25EziaNFDL3Ytn2-Ltz4Ek/s1600/ml.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" data-original-height="950" data-original-width="1600" height="190" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgedS3-PZchBJWGVRvE_UQSi_S7HwOSvCC-wVTpfryWC4Fx7bWje0Br_kYWl6CRan-HAxrR9KYt277iWvY_FWaLNgBhVBxqJ5GvSGHiE-1JxntusK-Ov_dIZ25EziaNFDL3Ytn2-Ltz4Ek/s320/ml.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Hoi and Matej in the top row, Chet and Tor below</td></tr>
</tbody></table>
In this episode, Chet and Tor talk with Hoi Lam and Matej Pfajfar about machine learning on Android. Tune in to learn about ML Kit, TensorFlow Lite, transfer learning, federated learning, ML model binding, the Android Neural Networks API, and more!<br />
<br />
Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20142%20Machine%20Learning%20Learning.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep142-MachineLearningLearning.mp3']);" target="_blank">audio file</a> directly.<br />
<h3 style="text-align: left;">
Links</h3>
<div>
<ul style="text-align: left;">
<li>ML Kit: <a href="http://g.co/mlkit" rel="noopener nofollow noreferrer" target="_blank">g.co/mlkit</a> </li>
<li>TensorFlow Lite Model Maker: <a href="https://www.tensorflow.org/lite/tutorials/model_maker_image_classification" rel="noopener nofollow noreferrer" target="_blank">https://www.tensorflow.org/lite/tutorials/model_maker_image_classification</a></li>
<li>Android Studio 4.1 with ML Binding - <a href="https://developer.android.com/studio/preview/features#tensor-flow-lite-models" rel="noopener nofollow noreferrer" target="_blank">https://developer.android.com/studio/preview/features#tensor-flow-lite-models</a> </li>
<li>People + AI Guidebook, suitable for SWE, Designers and PMs <a href="https://pair.withgoogle.com/guidebook/" rel="noopener nofollow noreferrer" target="_blank">https://pair.withgoogle.com/guidebook/</a> </li>
<li>Material Design Showcase Sample <a href="https://github.com/googlesamples/mlkit/tree/master/android/material-showcase" rel="noopener nofollow noreferrer" target="_blank">https://github.com/googlesamples/mlkit/tree/master/android/material-showcase</a> </li>
</ul>
</div>
<div>
<br /></div>
<b>Hoi: </b><a href="https://twitter.com/hoitab" target="_blank">@hoitab</a><br />
<b>Chet</b>: <a href="https://twitter.com/chethaase" target="_blank">@chethaase</a><br />
<b>Tor</b>: <a href="https://twitter.com/tornorbye" target="_blank">@tornorbye</a><br />
<b>Romain</b>: <a href="https://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<div style="text-align: center;">
<i><br /></i><i><br /></i><i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.</i></div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-13593310477616579082020-06-16T07:30:00.000-07:002020-06-16T09:32:22.866-07:00Episode 141: Discussing Conversations<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: right;">
</div>
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUqzwXjw3bGIEZKY1cZgI4yMwwshJ4dkVFNNIZhGpIg5PWTJEdo31qHmfd7nx9KNPAYeh5MmqDClWCYi_pQ2zEYdHPuNvgqda8UFifYzdJgOJ8e8SIxXaNhH0vYj51_EDgBKRjkzahwgw/s1600/Screen+Shot+2020-05-27+at+2.38.45+PM.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" data-original-height="869" data-original-width="1600" height="108" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUqzwXjw3bGIEZKY1cZgI4yMwwshJ4dkVFNNIZhGpIg5PWTJEdo31qHmfd7nx9KNPAYeh5MmqDClWCYi_pQ2zEYdHPuNvgqda8UFifYzdJgOJ8e8SIxXaNhH0vYj51_EDgBKRjkzahwgw/s200/Screen+Shot+2020-05-27+at+2.38.45+PM.png" width="200" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Romain, Tor's large head and bad framing, Chet's<br />
little tiny picture top-right, Julia, and Stefan</td></tr>
</tbody></table>
It's all about people! In this episode, Tor, Chet and Romain are joined by Julia Reynolds and Stefan Franks from the System UI team to have a discussion about conversations. We also converse about things unrelated to conversations.<br />
<br />
Starting with Android 11, conversation notifications now appear in a dedicated space at the top of the notifications shade. These notifications come with specific actions like opening a <a href="http://androidbackstage.blogspot.com/2020/06/episode-140-bubbles.html">bubble</a> or setting a reminder. Tune in to learn more about this new people-forward design.<br />
<br />
Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20141%20Conversations.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep140-Bubbles.mp3']);" target="_blank">audio file</a> directly.<br />
<h3 style="text-align: left;">
Links</h3>
<a href="https://developer.android.com/android11">Android 11 Beta</a><br />
<a href="https://developer.android.com/guide/topics/ui/notifiers/notifications">Notifications</a><br />
<br />
<b>Chet</b>: <a href="http://twitter.com/chethaase" target="_blank">@chethaase</a><br />
<b>Tor</b>: <a href="http://twitter.com/tornorbye" target="_blank">@tornorbye</a><br />
<b>Romain</b>: <a href="http://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<div style="text-align: center;">
<i><br /></i><i><br /></i><i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.</i></div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-48476712407678017882020-06-02T09:27:00.000-07:002020-06-02T09:27:48.508-07:00Episode 140: Bubbles!<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: right;">
</div>
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_ZPboI017Mmm5QArJvLMGy81WFFi-ggFCwZmV1GjJfWfp31aTR1nUwURaujpABE4UNTEMjsvyw6VSBbO1veMVxM5VG7caOfQo1ZasCYPd2MZg1mQX0eL6wEukM8qlK6M_SKmKFAE9xvI/s1600/podcast-140.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" data-original-height="942" data-original-width="1600" height="188" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_ZPboI017Mmm5QArJvLMGy81WFFi-ggFCwZmV1GjJfWfp31aTR1nUwURaujpABE4UNTEMjsvyw6VSBbO1veMVxM5VG7caOfQo1ZasCYPd2MZg1mQX0eL6wEukM8qlK6M_SKmKFAE9xvI/s320/podcast-140.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Artur, Chet, Mady, Romain and Tor</td></tr>
</tbody></table>
In this episode, Romain, Chet and Tor talked with Mady Melor and Artur Tsurkan from the System UI team about... Bubbles!<br />
<br />
Bubbles let users easily multi-task from anywhere on their device, and facilitates real-time communication using a chat application.<br />
<br />
Tune in to learn more about this new API in Android 11!<br />
<br />
<br />
Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20140%20Bubbles.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep140-Bubbles.mp3']);" target="_blank">audio file</a> directly.<br />
<br />
<h3 style="text-align: left;">
Links</h3>
<a href="https://developer.android.com/guide/topics/ui/bubbles">https://developer.android.com/guide/topics/ui/bubbles</a><br />
<br />
<b>Chet</b>: <a href="http://twitter.com/chethaase" target="_blank">@chethaase</a><br />
<b>Tor</b>: <a href="http://twitter.com/tornorbye" target="_blank">@tornorbye</a><br />
<b>Romain</b>: <a href="http://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<div style="text-align: center;">
<i><br /></i><i><br /></i><i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.</i></div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-46632277785438679602020-05-18T14:25:00.000-07:002020-05-18T14:25:05.234-07:00Episode 139: AndroidX. Jetpack. AndroidX. Jetpack. Whatever.<div dir="ltr" style="text-align: left;" trbidi="on">
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsbdKvGhZzZZE3kGz1kHte2DKVQJqfGDt224ELDfFNcBsD1ZZo8SUDAt8ySQkvjvGyJF7ve1fYj5amQ9ZcsCv4jDySfQWTnPiW6DCD_t6Xw5uiN7BROsNAmgweFS2QFJSX0Xz2ypv3GMw/s1600/Screen+Shot+2020-04-29+at+2.17.51+PM.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" data-original-height="865" data-original-width="1510" height="183" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsbdKvGhZzZZE3kGz1kHte2DKVQJqfGDt224ELDfFNcBsD1ZZo8SUDAt8ySQkvjvGyJF7ve1fYj5amQ9ZcsCv4jDySfQWTnPiW6DCD_t6Xw5uiN7BROsNAmgweFS2QFJSX0Xz2ypv3GMw/s320/Screen+Shot+2020-04-29+at+2.17.51+PM.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Romain, Chet, Alan, Nick, and a little tiny Tor<br />
in the upper-right corner</td></tr>
</tbody></table>
In this episode, Romain, Chet and Tor talked with Nick Anthony and Alan Viverette from the AndroidX team about... AndroidX. And Jetpack. And <span style="font-family: "courier new" , "courier" , monospace;">androidx</span>. (Spoiler alert: <span style="font-family: "courier new" , "courier" , monospace;">androidx</span> is the set of libraries. Jetpack is that... plus opinionated guidance. AndroidX is the name of the team that ships this stuff).<br />
<br />
We also talked about the release cadence (currently every two weeks, up from every-several-<i>months</i> a couple of years ago), the standards for release naming/versioning, API standards, and everything else in the world of AndroidX infrastructure and release.<br />
<br />
<br />
<br />
Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20139%20AndroidX.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep139-AndroidX.mp3']);" target="_blank">audio file</a> directly.<br />
<br />
<h3 style="text-align: left;">
Links</h3>
<a href="https://developer.android.com/jetpack/androidx/versions">AndroidX releases</a><br />
<br />
<b>Alan</b>: <a href="http://reddit.com/u/alanviverette">/u/alanviverette</a><br />
<b>Chet</b>: <a href="http://twitter.com/chethaase" target="_blank">@chethaase</a><br />
<b>Tor</b>: <a href="http://twitter.com/tornorbye" target="_blank">@tornorbye</a><br />
<b>Romain</b>: <a href="http://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<div style="text-align: center;">
<i><br /></i><i><br /></i><i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.</i></div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-74534797187792348902020-04-30T12:30:00.000-07:002020-04-30T12:30:44.927-07:00Episode 138: Animated IME — Oh, my!<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: right;">
</div>
<div style="text-align: right;">
</div>
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzCaGI9KAm-Yx_6R18Sax7r0N5p1FTo1JSlS2rHkBhMXgl87ay7De9oF7eRHPiJbaJayxfIQTgCppHlxnM3_0FeJeQyimuypSOLWZxDgYkg8ZXCGP77leYEbrXiiB3AWo6cUeU0SY6z6o/s1600/Screen+Shot+2020-04-15+at+12.01.56+PM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="816" data-original-width="1600" height="163" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzCaGI9KAm-Yx_6R18Sax7r0N5p1FTo1JSlS2rHkBhMXgl87ay7De9oF7eRHPiJbaJayxfIQTgCppHlxnM3_0FeJeQyimuypSOLWZxDgYkg8ZXCGP77leYEbrXiiB3AWo6cUeU0SY6z6o/s320/Screen+Shot+2020-04-15+at+12.01.56+PM.png" width="320" /></a></div>
</td></tr>
<tr><td class="tr-caption" style="text-align: center;">Chet, Romain, Jorim, Adrian and Taran. Oh and Tor hiding the upper right<span style="font-size: 12.8px;">.</span></td></tr>
</tbody></table>
In this episode, Tor, Chet and Romain are joined by Jorim, Adrian and Taran from the Window Manager team. We discussed newly announced capabilities of the IME (Input Method Editor) in Android 11. These new APIs allow applications to react in real-time to IME animations and thus provide a more polished and seamless user experience. It also happens to be the answer to one of your most requested features: knowing when the on-screen keyboard is showing.<br />
<br />
Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20138%20Animated%20IME%20-%20Oh%2C%20My!.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep137-Accessibility.mp3']);" target="_blank">audio file</a> directly.<br />
<ul style="text-align: left;">
</ul>
<b>Chet</b>: <a href="http://twitter.com/chethaase" target="_blank">@chethaase</a><br />
<b>Tor</b>: <a href="http://twitter.com/tornorbye" target="_blank">@tornorbye</a><br />
<b>Romain</b>: <a href="http://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<div style="text-align: center;">
<i><br /></i>
<i><br /></i>
<i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.</i>
</div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-26657059729257643302020-04-22T09:04:00.000-07:002020-04-22T09:04:57.053-07:00Episode 137: Accessibility<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: right;">
</div>
<div style="text-align: right;">
</div>
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiA6Sf6EqFl3WKr4doEjseEUIcQ4EecA1aHHmiICQr6R7FgI83LM0hryhiyx-0n6gPJP6-wwtAk-DJmrcB0be3zCmlCk2EjH8md_rEUQnItguGf7tJHWwV8aUfJ8wG18ILpPXhPpuOWvKc/s1600/Screen+Shot+2020-04-01+at+2.15.03+PM.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" data-original-height="1000" data-original-width="1600" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiA6Sf6EqFl3WKr4doEjseEUIcQ4EecA1aHHmiICQr6R7FgI83LM0hryhiyx-0n6gPJP6-wwtAk-DJmrcB0be3zCmlCk2EjH8md_rEUQnItguGf7tJHWwV8aUfJ8wG18ILpPXhPpuOWvKc/s320/Screen+Shot+2020-04-01+at+2.15.03+PM.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Chet, Qasid, Romain, Sally, Tor, and a very mysterious<br />
guest in a very dark room in the lower-right.</td></tr>
</tbody></table>
In this episode, Romain, Chet and Tor talked (remotely!) with Sally Yuen and Qasid Sadiq from the Accessibility team. We discussed the kinds of tools and facilities that their team provides, and how developers can (and should!) make their applications more accessible. We talked about Accessibility Services, Talkback, Accessibility Scanner, organizational complexities of accessibility efforts, and more.<br />
<br />
<i>Pro tip: Avoid creating custom widgets by using the built-in widgets in the platform to inherit accessibility functionality for free.</i><br />
<br />
Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20137%20Accessibility.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep137-Accessibility.mp3']);" target="_blank">audio file</a> directly.<br />
<br />
<h3 style="text-align: left;">
Links</h3>
<a href="https://developer.android.com/guide/topics/ui/accessibility">Build more accessible apps</a>: Guide with videos and links to more resources.<br />
<ul style="text-align: left;">
</ul>
<b>Chet</b>: <a href="http://twitter.com/chethaase" target="_blank">@chethaase</a><br />
<b>Tor</b>: <a href="http://twitter.com/tornorbye" target="_blank">@tornorbye</a><br />
<b>Romain</b>: <a href="http://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<div style="text-align: center;">
<i><br /></i>
<i><br /></i>
<i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.</i>
</div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-24998796520720020882020-04-16T09:40:00.004-07:002020-04-16T09:40:38.013-07:00Episode 136: Remoting<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: right;">
</div>
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgm4hmJk8iVRMD1oq-ydVECVZKKL49nycWDwJHwjF1mZ4n5__OJ0Gx7115KCncZU0OM-qgSWkxkf74GSVwXDdKYrNLXc4Qf17uJgNDJjWOG-AS5RhyIRnO3SJ8Kpg7YpLjrhBAlzfOF9I8/s1600/MVIMG_20171101_110413+%25281%2529.jpg" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" data-original-height="1200" data-original-width="1600" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgm4hmJk8iVRMD1oq-ydVECVZKKL49nycWDwJHwjF1mZ4n5__OJ0Gx7115KCncZU0OM-qgSWkxkf74GSVwXDdKYrNLXc4Qf17uJgNDJjWOG-AS5RhyIRnO3SJ8Kpg7YpLjrhBAlzfOF9I8/s320/MVIMG_20171101_110413+%25281%2529.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Tor, Chet, and Romain, remembering the way things used<br />
to be, <span style="font-size: 12.8px;">back when there was a recording studio instead of<br />closets </span><span style="font-size: 12.8px;">at home.</span></td></tr>
</tbody></table>
In this episode, Romain, Chet and Tor chat with zero guests about the current work-from-home reality, and about adjustments we've all made as we change the way we work.<br />
<br />
Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20136%20Remoting.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep136-Remoting.mp3']);" target="_blank">audio file</a> directly.<br />
<br />
<ul style="text-align: left;">
</ul>
<b>Chet</b>: <a href="http://twitter.com/chethaase" target="_blank">@chethaase</a><br />
<b>Tor</b>: <a href="http://twitter.com/tornorbye" target="_blank">@tornorbye</a><br />
<b>Romain</b>: <a href="http://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<div style="text-align: center;">
<i><br /></i>
<i><br /></i>
<i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.</i>
</div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.comtag:blogger.com,1999:blog-1052108547998082465.post-84066186431633168792020-04-02T15:51:00.000-07:002020-04-08T17:30:25.883-07:00Episode 135: Audio Podcast<div dir="ltr" style="text-align: left;" trbidi="on">
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjPLfmDn1HZhRBcVOo9ttDuRKrQ8-4xP1H-zpezrLL6JfxnZd_ntgnj1117ZgExhSbiKSwqIEmIrgxJgrKsbBsdDttZlcb29WFr0A7tDl2R3XgCFyEz349z2HayW1DNqzZWyZ1sFE-ntw/s1600/IMG_20200318_142400_MP.jpg" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" data-original-height="1200" data-original-width="1600" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjPLfmDn1HZhRBcVOo9ttDuRKrQ8-4xP1H-zpezrLL6JfxnZd_ntgnj1117ZgExhSbiKSwqIEmIrgxJgrKsbBsdDttZlcb29WFr0A7tDl2R3XgCFyEz349z2HayW1DNqzZWyZ1sFE-ntw/s320/IMG_20200318_142400_MP.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Tor, Don, Chet, and Phil, on a video conference on Tor's<br />
machine. VCs are critical to mitigating (but not actually<br />
solving) latency issues with remote podcasts.</td></tr>
</tbody></table>
In this first ever full-remote episode, Tor and Chet discuss audio programming with Don Turner from the Android DevRel team, and Phil Burk from the Android Audio Framework team. They chat about <a href="https://github.com/google/oboe">Oboe</a>, low-latency audio, audio performance in general, etc. And because Don and Phil know everything about audio, more time was spent before the recording discussing how to properly record the episode than was spent actually recording the episode.<br />
<br />
Subscribe to the <a href="http://feeds.feedburner.com/blogspot/AndroidDevelopersBackstage" target="_blank">podcast feed</a> or download the <a href="https://storage.googleapis.com/androiddevelopers/android_developers_backstage/ADB%20135%20Audio%20Podcast.mp3" onclick="_gaq.push(['_trackEvent', 'Downloads', 'Audio', 'Ep134-AllWorkNoPlay.mp3']);" target="_blank">audio file</a> directly.<br />
<br />
<div>
If you enjoyed this episode you might also be interested in <a href="http://androidbackstage.blogspot.com/2015/11/episode-39-midi.html">episode 39</a>, about MIDI audio with Phil Burk.</div>
<ul style="text-align: left;">
</ul>
<b>Phil:</b> <a href="https://twitter.com/philburk">@philburk</a><br />
<b>Don:</b> <a href="https://twitter.com/donturner">@donturner</a><br />
<b>Chet</b>: <a href="http://twitter.com/chethaase" target="_blank">@chethaase</a><br />
<b>Tor</b>: <a href="http://twitter.com/tornorbye" target="_blank">@tornorbye</a><br />
<b>Romain</b>: <a href="http://twitter.com/romainguy" target="_blank">@romainguy</a><br />
<div style="text-align: center;">
<i><br /></i>
<i><br /></i>
<i>Thanks to continued tolerance and support by our audio engineer, Dustin Elm.</i>
</div>
</div>
Android Developershttp://www.blogger.com/profile/08588467489110681140noreply@blogger.com