Dec 07

What’s new in Google Play at I/O 2016: better betas, the pre-launch report, benchmarks, a new Play Console app, and more

Posted by Purnima Kochikar, Director, Google Play Apps & Games

Google Play reaches over 1 billion monthly active users giving developers the world’s largest app distribution platform. Last year, Play users installed apps 65 billion times. To keep that great momentum going, we’re continuing to listen to your feedback and invest in more ways to help you grow your app or game business. Today, we’re sharing new features that benefit developers of all sizes.

 




Improvements to beta tests and app discovery on Google Play

Beta testing is a crucial tool that many developers use in the Google Play Developer Console to test their apps with real users, gather feedback, and make improvements before launching widely. Open beta tests are helpful to get feedback from a large group of users and allow any user to join a beta test. We’re making open beta tests easier to find and participate in: apps that are available only as open betas and aren’t in production yet will soon appear in Play search results, users will be able to opt-in from Play store listings directly, and users will be able to send you private feedback through your Play store listing too.

We’ll also be adding a new featured section to the store, called Google Play Early Access, showcasing a hand-picked group of promising open betas that haven’t gone to production yet.

There are more than a million apps available on Google Play and we continue to work on making it easy for people to discover the apps they’ll love. To that end, you’ll start seeing new collections on the store for tasks that might require a combination of apps. For example, when you’re buying a house, you’ll see the best apps for finding real estate, keeping notes, getting a mortgage, and travelling in the area in one handy collection. Developers don’t need to take any action to take advantage of this benefit, apps will automatically be chosen. These contextual collections make it easier for users to discover complimentary apps as well as new types of apps.

Users can now opt-in to beta
tests from the Play Store
An example of a new collection
for apps relating to buying a house

Improve your app with the Play pre-launch report

Your app business relies on having high quality apps. To achieve quality, your apps need to be tested on a range of real devices before you ship them to your users. Play’s new pre-launch report summarizes issues found when testing your app on Firebase Test Lab for Android on a wide range of devices.




The pre-launch report in the Developer Console

Along with diagnostics to help you fix any crashes we detected in your app, your reports will also include screenshots from devices that use different Android versions, languages, and screen resolutions. These can help you find layout issues. We’ve also included early warnings of known security vulnerabilities that may have sneaked into your app — even via third party libraries you rely on. You can enable the pre-launch report in the Developer Console.


Gain deeper insights from user reviews at a glance and reply to user reviews more easily

Your app reviews offer a wealth of information on what your users like and dislike about your app. We’re expanding on the improvements we made to ratings and reviews earlier this year, to offer you more ways to take advantage of reviews and better engage your audience.

Review benchmarks let you see your app’s rating distribution compared to similar apps in your category for a list of common topics which are relevant for all apps – like design, stability, and speed. You are also able to see how each area impacts your app’s rating. Review topics will let you see your app’s rating distribution for a list of topics which are specific to your app. With this analysis functionality, you can more easily identify what users think of your app and where to focus your improvement efforts.




Review benchmarks in the Developer Console

Developers frequently tell us they find replying to reviews valuable as a channel to directly engage their audience and gather feedback. In fact, we have found that users who update their star rating after a developer has responded to their review increase it by an average of 0.7 stars. For developers who have their own customer support solutions, we’re making replying easier with a new Reply to Reviews API. In the last few months, we’ve tested the API with Zendesk and Conversocial, so you can now start replying to reviews directly from those popular platforms or build your own custom integration.




Developers can now reply to reviews on Google Play from platorms
such as Zendesk and Conversocial

Understand more about user acquisition and conversion, and see how you’re doing compared to others

The User Acquisition performance report in the Developer Console gives you a snapshot of how many users visit your store listing, how many install your app, and how many go on to make purchases. We’ve now added the ability to see user acquisition data by country and you’ll soon be able to see user acquisition benchmarks and compare your app’s conversion rates to similar apps on the Play store. With this data, you can find opportunities to focus your marketing efforts and increase your installs with tools like Store Listing Experiments.



User acquisition country data in the Developer Console



Building apps and games for billions of users

Hundreds of millions of users, many of them in emerging markets, are coming online and, for many of them, their first experience is on an Android device.
 

To help you get your app ready for this opportunity, we’ve created Building for Billions guidelines with a development checklist to help you optimize your app. You can also get more in-depth tips and best practices for expanding to new markets in the accompanying Building for Billions Playbook

To help you meet local expectations when you set your prices and make purchases more attractive to your users, the Developer Console will now automatically round prices to local conventions in each market. For example, for a US app priced at $ 1.99, a user in Japan would see ¥200 rather than a non-rounded price from a straight FX conversion. You can also set up pricing templates to change pricing for products in bulk. You can make this change in the Developer Console.

While you’re working on getting your app ready for billions of users, we’ve been enhancing the Google Play experience for them too. With improved compression, we’ve made app updates more data efficient, and we’re focusing on making the Play Store itself faster than ever on all connection types.

We’ve also revamped how we select visible apps in key markets like India and Brazil to better showcase apps that are more relevant locally and apps made by local developers. And we continue to add more payment methods in new countries, including carrier billing and gift cards in India and Indonesia.

Two new apps: Get your app data and important notifications on the go, and stay up to date with best practices

To give you access to your data when you need it, and to keep you informed of crucial business updates with notifications, we’re launching the Play Console app. You can access your app’s data including installs, uninstalls, crashes, ratings, and reviews. You can also receive push notifications for important news like when your app update is live on Google Play. And you can even reply to reviews directly in the app, making it easier and quicker to engage your audience when you want to. Get the Play Console app on Google Play today.

Staying on top of all the features and best practices and strategies you should consider when growing your business can be a challenge. We’ve built another app, the Playbook by Google Play. The Playbook is a tailored list, based on your objectives, of the latest articles and videos from Google experts and across the web to help you grow a successful business on Google Play. Join the Playbook beta today and let us know your feedback.

The Play Console app
Playbook by Google Play

Finally, we will be soon making some updates to the Developer Distribution Agreement (DDA), which includes the ability for family members to share purchased apps on Google Play. Here you can see the updated DDA.



To learn more about all of these features, tune-in live to ‘What’s new in Google Play for developers’ at 11am PDT / 2pm EDT / 7:00pm GMT+1 on May 19 on the Google Developers YouTube channel.

If you’re attending I/O, come and visit the Google Play sandbox to get your app reviewed by experts.

Whether you’re attending I/O in person, at one of the many I/O Extended events around the world, or just watching from home, you can find more Google Play sessions in the I/O 2016 schedule.


Android Developers Blog

Dec 03

Building better mobile apps for work

Posted by Matt Goodridge – Google Play for Work Product Manager

Last year, we introduced Android for Work, a program designed to pair the
strength of the Android platform with support from the rich ecosystem of OEMs
(device manufacturers like Samsung), EMMs (Enterprise Mobility Managers) and
carriers with the goal of transforming the workplace. This means that
developers get the support they need to develop apps that configure to meet
business needs without customization.

With Android for Work, developers have been able to build apps for business and
make them available via Google Play for Work to all types of industries. No
matter the place or use case, Android for Work has helped lead businesses to
foster employee productivity and creativity through increased mobility.

Today we are announcing the Android for Work DevHub, a place for developers to
keep up with Android in the workplace and engage fellow business app developers
in an open forum. Android for Work DevHub members will receive access to Google
Play for Work and Android for Work product betas and developer events and will
have the opportunity to learn from Google experts on topics like how to:

  • leverage tools and resources provided by the AppConfig Community, which established a standard that provides Android developers a
    simple way set up app configurations,

  • improve app security by integrating with Android for Work APIs,
  • get an app featured on Google Play for Work,
  • and more…

Among the early members of the Android for Work DevHub is Keeper, a
mobile-first company committed to securing corporate credentials and sensitive
information. Darren Guccione, Keeper’s CEO and co-founder, said: “Having our
team be able to talk with Google experts as a part of the Android for Work
DevHub has been very helpful in optimizing Keeper, as an essential product, for
the workplace.” In addition to Keeper, select developers across an array of
industries are already represented in the Android for Work DevHub, and—starting
today—any business developer can apply to become a member, too.

To learn more about Android for Work, join us at Google I/O Tuesday, May 18th
at 2pm on Stage 10 Cassiopeia. I’ll be joined live on stage with James Kelly,
product manager in Android for Work and Rich Hyndman, and Android developer
advocate, to walk through the latest developments in Android for Work that will
help you make awesome apps for businesses and to meet the Android for Work team
in-person at our shop to see the Android for Work retail
experience.


Android Developers Blog

Nov 15

Creating Better User Experiences on Google Play

Posted by Eunice Kim, Product Manager for Google Play

Whether it’s a way to track workouts, chart the nighttime stars, or build a new reality and battle for world domination, Google Play gives developers a platform to create engaging apps and games and build successful businesses. Key to that mission is offering users a positive experience while searching for apps and games on Google Play. Today we have two updates to improve the experience for both developers and users.

A global content rating system based on industry standards

Today we’re introducing a new age-based rating system for apps and games on Google Play. We know that people in different countries have different ideas about what content is appropriate for kids, teens and adults, so today’s announcement will help developers better label their apps for the right audience. Consistent with industry best practices, this change will give developers an easy way to communicate familiar and locally relevant content ratings to their users and help improve app discovery and engagement by letting people choose content that is right for them.

Starting now, developers can complete a content rating questionnaire for each of their apps and games to receive objective content ratings. Google Play’s new rating system includes official ratings from the International Age Rating Coalition (IARC) and its participating bodies, including the Entertainment Software Rating Board (ESRB), Pan-European Game Information (PEGI), Australian Classification Board, Unterhaltungssoftware Selbstkontrolle (USK) and Classificação Indicativa (ClassInd). Territories not covered by a specific ratings authority will display an age-based, generic rating. The process is quick, automated and free to developers. In the coming weeks, consumers worldwide will begin to see these new ratings in their local markets.

To help maintain your apps’ availability on Google Play, sign in to the Developer Console and complete the new rating questionnaire for each of your apps. Apps without a completed rating questionnaire will be marked as “Unrated” and may be blocked in certain territories or for specific users. Starting in May, all new apps and updates to existing apps will require a completed questionnaire before they can be published on Google Play.

An app review process that better protects users

Several months ago, we began reviewing apps before they are published on Google Play to better protect the community and improve the app catalog. This new process involves a team of experts who are responsible for identifying violations of our developer policies earlier in the app lifecycle. We value the rapid innovation and iteration that is unique to Google Play, and will continue to help developers get their products to market within a matter of hours after submission, rather than days or weeks. In fact, there has been no noticeable change for developers during the rollout.

To assist in this effort and provide more transparency to developers, we’ve also rolled out improvements to the way we handle publishing status. Developers now have more insight into why apps are rejected or suspended, and they can easily fix and resubmit their apps for minor policy violations.

Over the past year, we’ve paid more than $ 7 billion to developers and are excited to see the ecosystem grow and innovate. We’ll continue to build tools and services that foster this growth and help the developer community build successful businesses.

Join the discussion on

+Android Developers


Android Developers Blog

Nov 10

Making Pixel better for Drivers

Posted by Marc Stogaitis and Tajinder Gadh, Software Engineers

Driving is an essential part of our daily activities. So at Google we spend a
lot of time thinking how we can make Android devices better and safer for our
users. How we can prevent distracted driving and together build an open
ecosystem to enable safety first smartphone experiences.

Recently we launched Driving Do-Not-Disturb on the newly announced Pixel 2
generation of devices. Once enabled, Driving Do-Not-Disturb automatically puts
your device into a do not disturb mode while driving. During this mode any
incoming messages and notifications are silenced while you can still receive
incoming calls, navigation directions and voice interactions using a connected
Car bluetooth. The product is designed to limit distractions during driving
while at the same time not getting in the way so users can continue to use
navigation or other similar apps with minimal friction.

Behind the scenes, it uses AI powered on-device Activity
Recognition that detects when a person is driving using low power signals
from multiple sensors, bluetooth and WiFi. Activity Recognition uses the Android
Sensor Hub to ensure low latency, low power and accurate driving detection.

This is a next step in our journey, but we are far from done. Early next year
we are introducing the Activity Recognition Transition Api, which is the same
Api used by Driving Do Not Disturb to build distraction-free driving
experiences.

We appreciate the feedback, and will continue to listen to your feedback as the
product evolves.

If you have questions about setting up the Driving Do-Not-Disturb, check out our
Help Center.


Android Developers Blog

Aug 14

How Google Analytics helps you make better decisions for your apps

Posted by Russell Ketchum, Lead Product Manager, Google Analytics for Mobile Apps

Knowing how your customers use your app is the foundation to keeping them happy and engaged. It’s important to track downloads and user ratings, but the key to building a successful business is using data to dive deeper into understanding the full acquisition funnel and what makes users stick around.

Google Analytics is the easiest way to understand more about what your users are doing inside your app on Google Play, while also simultaneously tracking your users across the web and other mobile platforms. To show how Google Analytics can help, we’ve created a new “Analyze” section on the Android Developers website for you to check out. We provide guidance on how to design a measurement plan and implement effective in-app analytics – and take advantage of features only available between Google Play and Google Analytics.

The Google Play Referral Flow in Analytics

Google Analytics for mobile apps provides a comprehensive view into your app’s full user lifecycle, including user acquisition, composition, in app behavior, and key conversions. Our Analytics Academy course on mobile app analytics is also a great resource to learn the fundamentals.

Eltsoft LLC, a foreign language learning and education app developer for Android, recognized early on how impactful Google Analytics would have on the company’s ability to quickly improve on its apps and meet user needs.

Analytics has really helped us to track the effectiveness of the changes to our app. I would say six months ago, that our success was a mystery. The data said we were doing well, but the whys were not clear. Therefore, we couldn’t replicate or push forward. But today, we understand what’s happening and can project our future success. We have not only the data, but can control certain variables allowing us to understand that data. – Jason Byrne, Eltsoft LLC

Here are some powerful tips to make the most of Google Analytics:

  1. Understand the full acquisition funnel
  2. Uniquely integrated with the Google Play Developer Console, Google Analytics gives you a comprehensive view of the Google Play Referral Flow. By linking Analytics to the Developer Console, you can track useful data on how users move through the acquisition flow from your marketing efforts to the Google Play store listing to the action of launching the app. If you find that a significant number of users browse your app in Google Play, but don’t install it, for example, you can then focus your efforts on improving your store listing.

  3. Unlock powerful insights on in-app purchases
  4. Monitoring in-app purchases in the Google Play Developer Console will show you the total revenue your app is generating, but it does not give you the full picture about your paying users. By instrumenting your app with the Google Analytics ecommerce tracking, you’ll get a fuller understanding of what paying users do inside your app. For example, you can find out which acquisition channels deliver users who stay engaged and go on to become the highest value users.

  5. Identify roadblocks and common paths with the Behavior Flow
  6. Understanding how users move through your app is best done with in-app analytics. With Google Analytics, you can easily spot if a significant percentage of users leave your app during a specific section. For example, if you see significant drop off on a certain level of your game, you may want to make that level easier, so that more users complete the level and progress through the game. Similarly, if you find users who complete a tutorial stay engaged with your app, you might put the tutorial front and center for first-time users.

  7. Segment your audience to find valuable insights
  8. Aggregated data can help you answer questions about overall trends in your app. If you want to unlock deeper insights about what drives your users’ behavior, you can slice and dice your data using segmentation, such as demographics, behavior, or install date. If something changes in one of your key metrics, segmentation can help you get to the root of the issue — for example, was a recent app update unpopular with users from one geographic area, or were users with a certain device or carrier affected by a bug?

  9. Use custom data to measure what matters for your business
  10. Simply activating the Google Analytics library gives you many out-of-the-box metrics without additional work, such as daily and monthly active users, session duration, breakdowns by country, and many more variables. However, it’s likely that your app has many user actions or data types that are unique to it, which are critical to building an engaged user base. Google Analytics provides events, custom dimensions, and custom metrics so you can craft a measurement strategy that fits your app and business.

  11. No more one-size-fits-all ad strategy
  12. If you’re a developer using AdMob to monetize your app, you can now see all of your Analytics data in the AdMob dashboard. Running a successful app business is all about reaching the right user with the right ad or product at the right time. If you create specific user segments in Google Analytics, you can target each segment with different ad products. For example, try targeting past purchasers with in-app purchase ads, while monetizing users who don’t purchase through targeted advertising.

By measuring your app performance on a granular level, you will be able to make better decisions for your business. Successful developers build their measurement plan at the same time as building their app in order to set goals and track progress against key success metrics, but it’s never too late to start.

Choose the implementation that works best for your app to get started with Google Analytics today and find out more about what you can do in the new “Analyze” section of developers.android.com.

Join the discussion on

+Android Developers


Android Developers Blog

Jul 13

New features to better understand player behavior with Player Analytics

Posted by Lily Sheringham, Developer Marketing at Google Play

Google Play games services includes Player Analytics, a free reporting tool available in the Google Play Developer Console, to help you understand how players are progressing, spending, and churning. Now, you can see what Player Analytics looks like with an exemplary implementation of Play games services: try out the new sample game in the Google Play Developer Console, which we produced with help from Auxbrain, developer of Zombie Highway 2. The sample game uses randomized and anonymized data from a real game and will also let you try the new features we’re announcing today. Note: You need a Google Play Developer account in order to access the sample game.

Use predictive analytics to engage players before they might churn

To help you better understand your players’ behavior, we’ve extended the Player Stats API in Player Analytics with predictive functionality. The churn prediction method will return data on the probability that the player will churn, i.e., stop playing the game, so you can create content in response to this to entice them to stay in your game. Additionally, the spend prediction method will return the probability that the player will spend, and you could, for example, provide discounted in-app purchases or show ads based on these insights.

Create charts in the new funnels report to quickly visualize sequences of events

The funnels report enables you to create a funnel chart from any sequence events, such as achievements, spend, and custom events. For example, you could log custom events for each step in a tutorial flow (e.g., tutorial step 1, step 2, step 3), and then use the funnel report to visualize the exit points in your tutorial.

Measure and compare the effect of changes and cumulative values by new users with cohort’s report

The cohorts report allows you to take any event such as sessions, cumulative spend, and custom events, and compare the cumulative event values by new user cohorts – providing valuable insight into the impact of your decisions on your gaming model. For example, you can view users that started the day before you made a change and the day after. This allows you to measure and compare the effect of changes made, so if you doubled the price of all your items in your in-game store, you can see if the cumulative sessions started after the change was lower or higher than the users that started before the change.


Updated C++, iOS SDKs and Unity plug-in to support Player Stats API

We have updated the C++ and iOS SDKs, and the Unity plug-in, all of which now support the Player Stats API, which includes the basic player stats as well as spend and churn predictions.

Be sure to check out the sample game and learn more about Play Games Services. You can also get top tips from game developer Auxbrain to help you find success with Google Play game services.


Android Developers Blog

May 13

Track your subscriptions better with the Google Play Developer API

Posted by Neto Marin, Developer Advocate

Back in 2012, we introduced free trials support for Android app subscriptions. A
free trial runs for a period of time that you set and then automatically
converts to a full subscription based on the subscription’s billing interval and
price. Google Play supports free trials for all subscription types. Check out Free
trials in our documentation for more details.

This feature is an important tool for user conversion because the user can try
your app or game before committing to paying. To help you track the
subscription status better, we are adding a third “paymentState” value to the Purchases.subscriptions
API (on Google
Play Developer API) to represent that the user is in a free trial. Possible
values are:

  • 0 – Payment pending
  • 1 – Payment received
  • 2 – Free trial

Since there is a new possible value, it is necessary to check how your back end
is handling the paymentState parameter. If you are doing something like this,
you potentially could have a problem:

// WARNING: Don't do this!
if (paymentState == 1) {
    // User is in normal state
} else {
    // Handle user in grace period   # this would now be a bug
}

As a best practice, and to avoid issues on future updates, we recommend checking
specifically for each possible case, like this:

if (paymentState == 0) {
    // Subscriber with payment pending
} else if (paymentState == 1) {
    // Subscriber in good standing (paid)
} else if (paymentState == 2) {
    // Subscriber in free trial
}

You can check the Purchases.subscriptions
documentation for more details. And if you’re not offering free trials in your
app or game, don’t miss the chance to increase user conversions by letting them
have a taste of your app – check out our documentation on Free
trials.


Android Developers Blog

Jan 10

Building better apps with Runtime Permissions

Posted by Ian Lake, Developer Advocate

Android devices do a lot, whether it is taking pictures, getting directions or making phone calls. With all of this functionality comes a large amount of very sensitive user data including contacts, calendar appointments, current location, and more. This sensitive information is protected by permissions, which each app must have before being able to access the data. Android 6.0 Marshmallow introduces one of the largest changes to the permissions model with the addition of runtime permissions, a new permission model that replaces the existing install time permissions model when you target API 23 and the app is running on an Android 6.0+ device.

Runtime permissions give your app the ability to control when and with what context you’ll ask for permissions. This means that users installing your app from Google Play will not be required to accept a list of permissions before installing your app, making it easy for users to get directly into your app. It also means that if your app adds new permissions, app updates will not be blocked until the user accepts the new permissions. Instead, your app can ask for the newly added runtime permissions as needed.

Finding the right time to ask for runtime permissions has an important impact on your app’s user experience. We’ve gathered a number of design patterns in our new Permission design guidelines including best practices around when to request permissions, how to explain why permissions are needed, and how to handle permissions being denied.

Ask up front for permissions that are obvious

In many cases, you can avoid permissions altogether by using the existing intents system to utilize other existing specialized apps rather than building a full experience within your app. An example of this is using ACTION_IMAGE_CAPTURE to start an existing camera app the user is familiar with rather than building your own camera experience. Learn more about permissions versus intents.

However, if you do need a runtime permission, there’s a number of tools to help you. Checking for whether your app has a permission is possible with ContextCompat.checkSelfPermission() (available as part of revision 23 of the support-v4 library for backward compatibility) and requesting permissions can be done with requestPermissions(), bringing up the system controlled permissions dialog to allow the user to grant you the requested permission(s) if you don’t already have them. Keep in mind that users can revoke permissions at any time through the system settings so you should always check permissions every time.

A special note should be made around shouldShowRequestPermissionRationale(). This method returns true if the user has denied your permission request at least once yet have not selected the ‘Don’t ask again’ option (which appears the second or later time the permission dialog appears). This gives you an opportunity to provide additional education around the feature and why you need the given permission. Learn more about explaining why the app needs permissions.

Read through the design guidelines and our developer guide for all of the details in getting your app ready for Android 6.0 and runtime permissions. Making it easy to install your app and providing context around accessing user’s sensitive data are key changes you can make to build better apps.

Join the discussion on

+Android Developers


Android Developers Blog

Dec 19

Pixel Security: Better, Faster, Stronger

Posted by Paul Crowley, Senior Software Engineer and Paul Lawrence, Senior Software Engineer

Encryption protects your data if your phone falls into someone else’s hands. The
new Google Pixel and Pixel XL are encrypted by default to offer strong data
protection, while maintaining a great user experience with high I/O performance
and long battery life. In addition to encryption, the Pixel phones debuted
running the Android Nougat release, which has even more security
improvements.

This blog post covers the encryption implementation on Google Pixel devices and
how it improves the user experience, performance, and security of the device.

File-Based Encryption Direct Boot experience

One of the security features introduced in Android Nougat was file-based
encryption. File-based encryption (FBE) means different files are encrypted
with different keys that can be unlocked independently. FBE also separates data
into device encrypted (DE) data and credential encrypted (CE) data.

Direct
boot uses file-based encryption to allow a seamless user experience when a
device reboots by combining the unlock and decrypt screen. For users, this means
that applications like alarm clocks, accessibility settings, and phone calls are
available immediately after boot.

Enhanced with TrustZone® security

Modern processors provide a means to execute code in a mode that remains secure
even if the kernel is compromised. On ARM®-based processors this mode is known
as TrustZone. Starting in Android Nougat, all disk encryption keys are stored
encrypted with keys held by TrustZone software. This secures encrypted data in
two ways:

  • TrustZone enforces the Verified Boot
    process. If TrustZone detects that the operating system has been modified, it
    won’t decrypt disk encryption keys; this helps to secure device encrypted (DE)
    data.

  • TrustZone enforces a waiting period between guesses at the user credential,
    which gets longer after a sequence of wrong guesses. With 1624 valid four-point
    patterns and TrustZone’s ever-growing waiting period, trying all patterns would
    take more than four years. This improves security for all users, especially
    those who have a shorter and more easily guessed pattern, PIN, or
    password.

Encryption on Pixel phones

Protecting different folders with different keys required a distinct approach
from full-disk
encryption (FDE). The natural choice for Linux-based systems is the
industry-standard eCryptFS. However, eCryptFS didn’t meet our performance
requirements. Fortunately one of the eCryptFS creators, Michael Halcrow, worked
with the ext4 maintainer, Ted Ts’o, to add encryption natively to ext4, and
Android became the first consumer of this technology. ext4 encryption
performance is similar to full-disk encryption, which is as performant as a
software-only solution can be.

Additionally, Pixel phones have an inline hardware encryption engine, which
gives them the ability to write encrypted data at line speed to the flash
memory. To take advantage of this, we modified ext4 encryption to use this
hardware by adding a key reference to the bio structure, within the ext4 driver
before passing it to the block layer. (The bio structure is the basic container
for block I/O in the Linux kernel.) We then modified the inline encryption block
driver to pass this to the hardware. As with ext4 encryption, keys are managed
by the Linux keyring. To see our implementation, take a look at the source
code for the Pixel kernel.

While this specific implementation of file-based encryption using ext4 with
inline encryption benefits Pixel users, FBE is available in AOSP and ready to
use, along with the other features mentioned in this post.


Android Developers Blog

Dec 16

Tips to be better found and discovered on Google Play

Posted by Andrew Ahn, Product Manager, Google Play

We’re constantly working on ways to make Google Play a great place for users to
discover apps and games they’ll love. We know this is crucial to most developers
ongoing success. There are steps you can take to ensure your app is primed for
success – that’s why we’re sharing a reminder of some of our top tips for
getting your app discovered on Google Play.

Build for quality

First, build for quality. Android users expect high-quality apps. App quality
directly influences the long-term success of your app – in terms of installs,
user rating and reviews, engagement, and user retention. These are some of the
factors that go into our search and discovery systems that help discern what
apps to recommend and surface across our Google Play experiences. When building
your app, check against the quality
criteria, and use what you need from the material design guidelines to make
sure you are delivering a highly usable experience. Also, be sure to test your
app for functional quality. Opt-in to the pre-launch
report for your alpha and beta apps in the Google Play Developer Console and
you’ll receive a report for each APK showing how it performs on real devices. This will help you identify crashes and other issues before you release your app.

Example: Designing for high usability through Google Material Design.

Request only the permissions you need

Second, be considerate on which permission settings to enable for your app. We
see that there are some apps that ask for very sensitive permissions, even when
the app doesn’t use them. (For example, a camera app asking for read and write
permissions to call logs.) Excessive app permissions may dissuade users from
installing your app. In fact, one study, in which users
were shown two unbranded apps with similar ratings that had the same
functionality but different sets of permission requests, showed that users were,
on average, 3 times more likely to install the app with fewer permissions
requests. And a similar
study showed that users are 1.7 times more likely, on average, to select the
application with fewer permission requests. The rule of thumb is to enable
permissions that are only essential to your app. Read the best
practices for app permissions.

Chart:
Distribution of permission groups use across Arcade Games category.

If you’re building an arcade game, you many only need a very few permission
settings, if any.

Listen and respond to your users

Lastly, be attentive to user feedback. It’s ultimately the users who drive our
search and discovery systems. When you hear user feedback about bugs or other
issues, we recommend engaging with the feedback and, if needed, updating your
app in a timely manner. Having an up-to-date app that reflects your user’s
feedback can help you gain more installs, engagement, and higher ratings. Beta
testing is a good way to get feedback from real users before launch. You can
also check the ratings
and reviews section of the Developer Console to see an analysis of what
users are saying about your app and how that is affecting your rating compared
to similar apps.

Review benchmarks in the Developer Console uses machine learning to give you
insights about what users are saying about your app and how it affects your
rating.

Google Play strives to help users find and discover the most safe, high quality,
useful, and relevant apps. Building apps that put user’s interest first will
help you be successful in Google Play. For more tips and best practices for
building a successful app business on Google Play, get the Playbook for Developers app.

How useful did you find this blogpost?



Android Developers Blog