Postingan

Menampilkan postingan dari Juli, 2020

11 Weeks of Android: Android Developer Tools

Gambar
Posted by Jamal Eason , Product Manager, Android This blog post is part of a weekly series for #11WeeksOfAndroid . For each of the #11WeeksOfAndroid , we’re diving into a key area so you don’t miss anything. This week, we spotlighted Android Developer Tools ; here’s a look at what you should know. The big news During the 11 weeks of Android, we launched a range of developer tool updates in Android Studio. As of today, you can find version 4.0 of Android Studio on the stable release channel, version 4.1 on the beta channel, and the very latest features of version 4.2 on the canary channel. The focus across each of these versions is a balance of app productivity and delivery of a high quality product that you can rely on for app development. For each day of this past week we highlighted improvements and tips in the key points of your development flow from app design, coding, deployment, build, app testing with the emulator, to app performance profiling. This blog highlights the content

Introducing the Motion Editor

Gambar
Posted by Scott Swarthout, Product Manager We spoke with the Android developer community and learned that animations are important for making UIs more intuitive and memorable. However, we also heard that adding complex animation to Android apps has been a difficult task.To address this problem, we created a powerful set of APIs with Motion Layout and a corresponding tool – Motion Editor, that when combined make it easier to build pixel-perfect animations. This blog is a quick tour of the new Motion Editor and how to use the latest features during your animation development. Additionally today, you can now watch a new video series specifically created to teach you about the various APIs included with MotionLayout. Watch here . Motion Editor is a visual design editor for the MotionLayout layout type, making it easier to create and preview animations. We just released the stable version Motion Editor in Android Studio 4.0 and we already see many developers using it to build animations. A

The winners of the Google Play Indie Games Festival are...

Gambar
Posted by Leticia Lago, Head of Developer Marketing, EMEA We wrapped up the Indie Games Festivals in Europe, Japan, and South Korea. You can now check out the three winners and Top 10 finalists from each of the contests. The Google Play Indie Games Festival celebrates the creativity and innovation that small games developers bring to the Play Store. We shortlisted 20 finalists for each contest after receiving hundreds of submissions. The finalists were to showcase their art at events in Warsaw, Tokyo, and Seoul. However, this year’s unprecedented events saw the finalists presenting to jury members online. The juries then deliberated to select the winners. Winning developers receive prize packages designed to help them grow their business on Android and Google Play. Each package offers promotions on the Google Play Store, consultations with members of the Google Play team, Google hardware, promotion campaigns, and more. Join us in congratulating the developers and try out their game

11 Weeks of Android: Jetpack

Gambar
Posted by Diana Wong, Product Manager, Android Jetpack This blog post is part of a weekly series for #11WeeksOfAndroid . For each of the #11WeeksOfAndroid , we’re diving into a key area so you don’t miss anything.This week, we spotlighted Jetpack ; here’s a look at what you should know. The big news In 2018, we launched Android Jetpack as a suite of libraries to help developers follow best practices, reduce boilerplate code, and write code that works consistently across Android versions and devices. We are excited about the growth we’ve seen and the incredible feedback that developers like you have shared with us. 47% of the top 1000 apps use 2 or more Jetpack libraries, not including core libraries like AppCompat or Lifecycle. Our work over the past year has been about making the basics easy for Android developers, so that you can focus on the code you care about. We have released many updates to our existing libraries as well as new libraries to help make building high-quality apps

Decrease startup time with Jetpack App Startup

Gambar
Posted by Yacine Rezgui , Developer Advocate and Rahul Ravikumar , Software Engineer Application startup time is a critical metric for any application. Users expect apps to be responsive and fast to load. When an application does not meet this expectation, it can be disappointing to users. This poor experience may cause a user to rate your app badly on the Play store, or even abandon your app altogether. Jetpack App Startup is a library that provides a straightforward, performant way to initialize components at application startup. Both library developers and app developers can use App Startup to streamline startup sequences and explicitly set the order of initialization. Apps and libraries often rely on having components ( WorkManager , ProcessLifecycleObserver , FirebaseApp etc.) initialized before Application.onCreate() . This is usually achieved by using content providers to initialize each dependency. Instead of defining separate content providers for each component that needs

Improving inter-activity communication with Jetpack ActivityResult

Gambar
Posted by Yacine Rezgui , Developer Advocate Whether you're requesting a permission, selecting a file from the system file manager, or expecting data from a 3rd party app, passing data between activities is a core element in inter-process communication on Android. We’ve recently released the new ActivityResult APIs to help handle these activity results. Previously, to get results from started activities, apps needed to implement an onActivityResult() method in their activities and fragments, check which requestCode a result is referring to, verify that the requestCode is OK, and finally inspect its result data or extended data. This leads to complicated code, and it doesn’t provide a type-safe interface for expected arguments when sending or receiving data from an activity. What are the ActivityResult APIs? The ActivityResult APIs were added to the Jetpack activity and fragment libraries, making it easier to get results from activities by providing type-safe contracts. These

What’s New in Navigation 2020

Gambar
Posted by Jeremy Woods, Software Engineer, Android UI Toolkit The latest versions of the Jetpack Navigation library (2.2.0 and 2.3.0) added a lot of requested features and functionality, including dynamic navigation , navigation back stack entries , a library for navigation testing , additional features for deep linking , and more. Let’s go over the most important changes, see what problems they solve, and learn how to use them! Dynamic Navigation We’ve updated Navigation to simplify adding dynamic feature modules for your application. Previously, implementing navigation between destinations defined in dynamic feature modules required a lot of work. Before you could navigate to the first dynamic destination, you needed to add the Play Core library and the Split Install API to your app. You also needed to check for and download the dynamic module. Once downloaded, you could then finally navigate to the destination. On top of this, if you wanted to have an on-screen progress bar for th

Getting on the same page with Paging 3

Gambar
Posted by Florina Muntenescu , Android Developer Advocate Getting on the same page with Paging 3 The Paging library enables you to load large sets of data gradually and gracefully, reducing network usage and system resources. You told us that the Paging 2.0 API was not enough - that you wanted easier error handling, more flexibility to implement list transformations like map or filter , and support for list separators, headers, and footers. So we launched Paging 3.0 (now in alpha02), a complete rewrite of the library using Kotlin coroutines (still supporting Java users) and offering the features you asked for. Paging 3 highlights The Paging 3 API provides support for common functionality that you would otherwise need to implement yourself when loading data in pages: Keeps track of the keys to be used for retrieving the next and previous page. Automatically requests the correct next page when the user scrolls to the end of the loaded data. Ensures that multiple requests aren’t triggere