Postingan

Menampilkan postingan dari Februari, 2018

Improving Stability by Reducing Usage of non-SDK Interfaces

Posted by David Brazdil, Software Engineer In Android, we're always looking for ways to improve the user and developer experience by making those experiences as stable as possible. In this spirit, we've been working to ensure that apps don't use non-SDK interfaces, since doing so risks crashes for users and emergency rollouts for developers. In Android N, we restricted the set of symbols that C/C++ code could use . This change ensured that apps using C++ rely on stable NDK interfaces rather than incur the incremental crashes caused by reliance on unstable, non-NDK interfaces. Starting in the next release of Android, we will further increase stability by expanding these restrictions to cover the Java language interfaces of the SDK. What behavior will I see? Starting in the next release of Android, some non-SDK methods and fields will be restricted so that you cannot access them -- either directly, via reflection, or JNI. If you try, you can see errors such as NoSuchF...

Continuous Shared Element Transitions: RecyclerView to ViewPager

Gambar
By Shalom Gibly, Software Engineer, Google's Material Gallery Team Transitions in Material Design apps provide visual continuity. As the user navigates the app, views in the app change state. Motion and transformation reinforce the idea that interfaces are tangible, connecting common elements from one view to the next. This post aims to provide guidelines and implementation for a specific continuous transition between Android Fragments. We will demonstrate how to implement a transition from an image in a RecyclerView into an image in a ViewPager and back, using 'Shared Elements' to determine which views participate in the transition and how. We will also handle the tricky case of transitioning back to the grid after paging to an item that was previously offscreen. This is the result we are aiming for: If you wish to skip the explanation and go straight to the code, you can find it here . What are shared elements? A shared element transition determines how views that are pr...

A better way to track your promotions on Google Play Billing

Posted by Neto Marin, Developer Advocate Promotions can be a valuable tool to increase user engagement or attract new users by offering content or features to a limited number of users free of charge. We are happy to share an improvement in the Google Play Developer API that makes it easier to track your promotions from your own backend. Starting today, the API for Purchases.products will return " Promo" as a new value for the field purchaseType when the user redeems a promo code. Now, the possible values are: 0. Test (test purchases) 1. Promo (Promo code redemption purchase) For purchases made using the standard in-app billing flow, the field will continue to not be set in the API response. Please note : This state is only returned by the Purchases.products API. For subscriptions you may use Free Trials to offer free of charge subscription periods. For more details about how to create and redeem promo codes, check the In-app Promotions documentation. For more detail...

Congratulations to the winners of the Google Play Indie Games Contest 2017 in Europe

Gambar
Posted by Adriana Puchianu, Developer Marketing Google Play We have just wrapped up the second edition of the Google Play Indie Games Contest in Europe ! The iconic Saatchi Gallery in London welcomed 20 developers , from 12 countries, who showcased their games to the audience of gamers, industry experts, and journalists. The finalists' games were on show to the public, who spent three hours trying out their games and voting for their favourites, alongside the Google Play team. The top 10 finalists were then selected, and went on to pitch their games, and compete for the big prizes in front of our jury . Please join us in congratulating the winners! They will be bringing home a well-deserved diploma, along with a prize package that will help them reach more gamers worldwide; including premium placement on the Google Play Store, marketing campaigns of up to 100,000 EUR and influencer campaigns of up to 50,000 EUR, the latest Google hardware, tickets to Google I/O, and much more . It...

Discover tools for Android data migration and improve your app retention

Posted by Sean McQuillan (@objcode) and Prateek Tandon (@ptandon05) What happens to app usage and accessibility when people get new phones? The feedback we've had is that people want apps to work straight out of the box, just like on their old phones. Developers of successful apps might also be used to thinking about user activation in a model borrowed straight from web. On the web, people register new accounts, activate by finding great features, then become retained when they experience value, and come back repeatedly to use your web page. The story is much the same on mobile. People register to create new accounts, activate by using your great features, then become retained when they find value and repeatedly launch your app. However, there's one big difference. Android apps typically store more information compared to your average web session. You usually never have to re-enter your password for an Android app for years, post account creation, that is until the moment you g...

Introducing Android KTX: Even Sweeter Kotlin Development for Android

Gambar
Posted by Jake Wharton ( @JakeWharton ), Florina Muntenescu ( @FMuntenescu ) & James Lau ( @jmslau ) Today, we are announcing the preview of Android KTX - a set of extensions designed to make writing Kotlin code for Android more concise, idiomatic, and pleasant. Android KTX provides a nice API layer on top of both Android framework and Support Library to make writing your Kotlin code more natural. The portion of Android KTX that covers the Android framework is now available in our GitHub repo . We invite you to try it out to give us your feedback and contributions. The other parts of Android KTX that cover the Android Support Library will be available in upcoming Support Library releases. Let's take a look at some examples of how Android KTX can help you write more natural and concise Kotlin code. Code Samples Using Android KTX String to Uri Let's start with this simple example. Normally, you'd call Uri.parse(uriString) . Android KTX adds an extension function to the S...

IoT Developer Story: Deeplocal

Gambar
Posted by Dave Smith , Developer Advocate for IoT Deeplocal is a Pittsburgh-based innovation studio that makes inventions as marketing to help the world's most loved brands tell their stories. The team at Deeplocal built several fun and engaging robotics projects using Android Things . Leveraging the developer ecosystem surrounding the Android platform and the compute power of Android Things hardware , they were able to quickly and easily create robots powered by computer vision and machine learning. DrawBot DrawBot is a DIY drawing robot that transforms your selfies into physical works of art. " The Android Things platform helped us move quickly from an idea, to prototype, to final product. Switching from phone apps to embedded code was easy in Android Studio, and we were able to pull in OpenCV modules, motor drivers, and other libraries as needed. The final version of our prototype was created two weeks after unboxing our first Android Things developer kit. " - Brian B...