Posted by Maru Ahues Bouza, Director Android Developer Relations In our previous blog post in this series, we defined app excellence as “creating an app that provides consistent, effortless, and seamless app user experiences. It is high performing and provides a great experience, no matter the device being used.” Let’s focus on the concept of app performance — what are the features of high performing apps, and how do you achieve app excellence through strong performance? From a user’s perspective, high-performing apps “just work.” However, the process of creating a high performing app is not always straightforward. To break things down, here are the main dimensions of high performance: StabilityAn app should be robust and reliable. It should not freeze (application not responding, or “ANR”) or crash. Before you launch your app, check out Google Play’s pre-launch report to identify potential stability issues. After deployment, pay attention to the Android Vitals page in the Google Play developer console. Specifically, ANRs are caused by threading issues. The ANR troubleshooting guide can help you diagnose and resolve any ANRs that exist in your app. Quick loadingImagine the first experience a user has of your app is…..waiting. At some point, they are going to get distracted or bored, and you have lost a new user. Your app should either load quickly or provide some sort of feedback onscreen such as a progress indicator. You can use data from Android vitals to quantify any issues you may have with start up times. Android vitals considers excessive start up times as:
However, these are relatively conservative numbers. We recommend you aim for lower. Here are some great tips on how to test start up performance. Fast renderingHigh quality frame rendering is not just for games. Smooth visual experiences that don’t stall or act sluggish are also important for apps. At a minimum aim to render frames every 16ms to achieve 60 frames per second, but bear in mind there are devices in the market with faster refresh rates. To monitor performance as you test, use the Profile HWUI rendering option. Here are tools to help diagnose rendering issues. Economical with battery usageAs soon as a user realizes your app is draining their battery, they are going to consider uninstalling. Your app can drain battery through stuck partial wake locks, excessive wakeups, background Wifi scans, or background network usage. Use the Android Studio energy profiler combined with planned background work, to diagnose unexpected battery use. For apps that need to execute background tasks that require a guarantee that the system will run them even if the app exits, WorkManager is a battery friendly Android Jetpack library that runs deferrable, guaranteed background work when the work’s constraints are satisfied. Using up-to-date SDKsFor both security and performance, it’s important that any Google or third-party SDKs used are up-to-date. Improvements to these SDKs, such as stability, compatibility, or security, should be available to users in a timely manner. You are responsible for the entire code base, including any third party SDKs you may utilize. For Google SDKs, consider using SDKs powered by Google Play services, when available. These SDKs are backward compatible, receive automatic updates, reduce your app package size, and make efficient use of on-device resources. To learn more, please visit the Android app excellence webpage, where you will find case studies, practical tips, and the opportunity to sign up for our App Excellence summit.. In our next blog posts, we will talk about seamless user experiences across devices. Sign up to the Android developer newsletter here to be notified of the next installment and get news and insights from the Android team. App performance to drive app excellence published first on https://alanneumann.tumblr.com/ via Tumblr App performance to drive app excellence
0 Comments
Posted by Jeremy Walker, Engineer In order to help you develop high quality Wear OS apps, we have been busy updating the Android Jetpack Wear OS libraries and recently delivered the first five stable Jetpack Wear OS libraries:
How these compare to the Wearable Support libraryThe Android Jetpack Wear OS libraries contain all the familiar functionality you’ve grown used to in the old Wearable Support library, better support for Wear OS 3.0, and the features listed above (many of which are written 100% in Kotlin). As always with Android Jetpack, the new Wear OS libraries help you follow best practices, reduce boilerplate, and create performant, glanceable experiences for your users. The core stable libraries are available now. The Watch Face and Complications libraries are in alpha and will be released as stable later this year. Once that launches, the Wearable Support Library will officially be deprecated. We strongly recommend you migrate the libraries within your Wear OS apps from the Wearable Support library to their AndroidX equivalents as we make them available in stable. Note: The Android Jetpack libraries are meant to be replacements for the Wearable Support Libraries and aren’t designed to be used together. Try them out and let us know what you think! Thank you! Wear OS Jetpack libraries now in stable! published first on https://alanneumann.tumblr.com/ via Tumblr Wear OS Jetpack libraries now in stable! Posted by Madan Ankapura, Product Manager Today, we are releasing the beta of Android for Cars App Library version 1.1. Your Android Auto apps using features that require Car App API level 2+ like map interactivity, vehicle’s hardware data, multiple-length text, long message and sign-in templates, can now be used in cars with Android Auto 6.7+ (which were previously limited to Desktop Head Unit only). With this announcement, we are also completing the transition to Jetpack and will no longer be accepting submissions built with the closed source library ( For the entire list of changes in beta01, please see the release notes. To start building your app for the car, check out our updated developer documentation, car quality guidelines and design guidelines. If you’re interested in joining our Early Access Program to get access to new features early in the future, please fill out this interest form. You can get started with the Android for Cars App Library today, by visiting g.co/androidforcars. Bringing richer navigation, charging, parking apps to more Android Auto users published first on https://alanneumann.tumblr.com/ via Tumblr Bringing richer navigation, charging, parking apps to more Android Auto users Posted by Dave Burke, VP of Engineering We’re just a few weeks away from the official release of Android 12! As we put the finishing touches on the new version of Android, today we’re bringing you a final Beta update to help you with testing and development. For developers, now is the time to make sure your apps are ready! You can get Beta 5 today on your Pixel device, including on the Pixel 5a with 5G, by enrolling here for over-the-air updates. If you’re already enrolled, you’ll automatically get the update. You can also try Android 12 Beta 5 on select devices from several of our partners like Sharp. Visit the Android 12 developer site for details. Watch for more information on the official Android 12 release coming soon! What’s in Beta 5?Today’s update includes a release candidate build of Android 12 for Pixel and other devices and the Android Emulator. We reached Platform Stability at Beta 4, so all app-facing surfaces are final, including SDK and NDK APIs, app-facing system behaviors, and restrictions on non-SDK interfaces. With these and the latest fixes and optimizations, Beta 5 gives you everything you need to complete your testing. Get your apps ready!With the official Android 12 release coming next, we’re asking all app and game developers to complete your final compatibility testing and publish your compatibility updates ahead of the final release. For SDK, library, tools, and game engine developers, it’s important to release your compatible updates as soon as possible – your downstream app and game developers may be blocked until they receive your updates. To test your app for compatibility, just install it on a device running Android 12 Beta 5 and work through the app flows looking for any functional or UI issues. Review the Android 12 behavior changes for all apps to focus on areas where your app could be affected. Here are some of the top changes to test:
Remember to test the libraries and SDKs in your app for compatibility. If you find any SDK issues, try updating to the latest version of the SDK or reaching out to the developer for help. Once you’ve published the compatible version of your current app, you can start the process to update your app’s targetSdkVersion. Review the behavior changes for Android 12 apps and use the compatibility framework to help detect issues quickly. Explore the new features and APIsAndroid 12 has a ton of new features to help you build great experiences for users. Check out our Android 12 Beta 2 post for a recap and links to Android 12 talks at Google I/O. For complete details on all of the new features and APIs, visit the Android 12 developer site. Also make sure to try Android Studio Arctic Fox with your Android 12 development and testing. We’ve added lint checks to help you catch where your code might be affected by Android 12 changes, such as for custom declarations of splash screens, coarse location permission for fine location usage, media formats, and high sensor sampling rate permission. You can give these a try by downloading and configuring the latest version of Android Studio. Get started with Android 12!Today’s Beta 5 release has everything you need to try the Android 12 features, test your apps, and give us feedback. Just enroll any supported Pixel device to get the update over-the-air. To get started developing, set up the Android 12 SDK. You can also get Beta 5 on devices from several of our partners like Sharp. For even broader testing, you can try Beta 5 on Android GSI images, and if you don’t have a device, you can test on the Android Emulator. This update is also available for Android TV, so you can check out the latest TV features and test your apps on the all-new Google TV experience. What’s next?Stay tuned for the official Android 12 launch coming in the weeks ahead! Until then, feel free to continue sharing your feedback through our hotlists for platform issues, app compatibility issues, and third-party SDK issues. A huge thank you to our developer community for helping shape the Android 12 release! You’ve given us thousands of bug reports and shared insights that have helped us adjust APIs, improve features, fix significant bugs, and in general make the platform better for users and developers. We’re looking forward to seeing your apps on Android 12! Android 12 Beta 5 update, official release is next! published first on https://alanneumann.tumblr.com/ via Tumblr Android 12 Beta 5 update, official release is next! Posted by Ting-Yuan Huang, Software Engineer and Jiaxiang Chen, Software Engineer Kotlin Symbol Processing (KSP), our new tool for building lightweight compiler plugins in Kotlin, is now stable! KSP offers similar functionality to the Kotlin Annotation Processing Tool (KAPT), however it’s up to 2x faster, offers direct access to Kotlin language constructs, and offers support for multiplatform targets. Over the past few months, KSP has gone through 32 releases with over 162 bugs reported from the community and fixed by our team. If you were waiting to adopt it, now is the time to check it out. Why we built KSPOn the Android team, we regularly ask developers: what are your biggest frustrations with writing apps today? One of the top issues that comes up repeatedly is build speed. Over the years we’ve been making steady improvements to the Android build toolchain, and today we’re excited to add to those improvements with KSP. KSP is the next generation of annotation processing in Kotlin: it will dramatically improve build speed for Kotlin developers, and unlike KAPT, it offers support for Kotlin/Native and Kotlin/JS. Why is KSP faster?The Kotlin Annotation Processing Tool (KAPT) works with Java’s annotation processing infrastructure to make most Java language annotation processors work in Kotlin out of the box. To do this, KAPT compiles Kotlin code into Java stubs that retain information that Java annotation processors care about. Creating these stubs is costly though, and means the compiler must resolve all the symbols in your program multiple times (once to generate stubs, and then again to do the actual compilation). KSP moves away from the stub generation model by working as a Kotlin compiler plugin — it allows annotation processors to read and analyze source programs and resources directly in Kotlin instead of requiring you to depend on the Java annotation processing infrastructure. This both dramatically improves build speed (up to 2x faster for Room’s Kotlin test app) and means that KSP can be used for non-Android and non-JVM environments like Kotlin/Native and Kotlin/JS. How to get startedTo start using KSP, download the KSP playground project from GitHub, which shows how to use KSP both as an annotation processor and as a consuming app/library:
If you’re an app developer, check out the list of supported libraries and the quickstart guide for moving a module over from KAPT to KSP. Using Moshi or Room with KSPIf you’re using Moshi or Room in your project, you can already try out KSP by making a quick fix to your module’s build file. For example, to use the KSP version of Room in a Gradle module you can simply replace the KAPT plugin with KSP and swap out the KSP dependency: apply plugin: 'com.google.devtools.ksp' dependencies { ... implementation "androidx.room:room-runtime:$room_version" Check out the Room release notes for more info. ConclusionWith the 1.0 release of KSP you will start to see improved build times for your Kotlin projects as you migrate away from libraries based on KAPT. We have also updated a number of Android specific libraries which are ready for you to try today and offer significant performance improvements. Accelerated Kotlin build times with Kotlin Symbol Processing 1.0 published first on https://alanneumann.tumblr.com/ via Tumblr Accelerated Kotlin build times with Kotlin Symbol Processing 1.0 Posted by Patricia Correa, Director, Global Developer Marketing In June this year we opened applications for our Indie Games Accelerator, a mentorship program to help top mobile game startups achieve their full potential, as well as for our Indie Games Festival, a competition open to small game studios who get the opportunity to win promotions and be featured on Google Play. These annual programs are part of our commitment to helping all developers thrive in the Google ecosystem. We received thousands of applications from developers across the world and we were truly amazed by the response. We’re impressed by the innovation and passion of the indie game community, and the unique and creative games they bring to players worldwide. Last month we announced the Festival finalists and today we hosted the finals. This year, for the first time, the events were virtual so everyone could attend. Players from around the world joined the adventure, met the finalists, played their games, and cheered on the Top 10 and the winners as they were announced on stage. We also took the opportunity to announce the Indie Games Accelerator selected class of 2021. Our deepest thanks to our amazing hosts: YouTube creator Papfi, Japanese comedians Kajisak and Kikuchiusotsukanai, and Inho Chung, who all shared their unique expertise and love of games. Without further ado, here are this year’s Festival winners… Indie Games Festival WinnersEuropeBird Alone by George Batchelor, United Kingdom Cats in Time by Pine Studio, Croatia Gumslinger by Itatake, Sweden KoreaCATS & SOUP by HIDEA Rush Hour Rally by Soen Games The Way Home by CONCODE Users’ Choice Animal Doll Shop by Funnyeve JapanMousebusters by Odencat Quantum Transport by ruccho Survivor’s guilt by aso Student Category Award Japanese Train Drive Simulator 2 “OneMan2” by HAKOT Check out the top 10 finalists in Europe, South Korea and Japan. Indie Games Accelerator Class of 2021The selected studios will receive exclusive education and mentorship over the 12 week program, to help them build and grow successful businesses.
If you missed the finalsIf you missed the finals or would like to explore further, you can still sign in and wander around the space but only for a limited time. Explore now. How useful did you find this blog post? Celebrating some of the best indie games published first on https://alanneumann.tumblr.com/ via Tumblr Celebrating some of the best indie games Posted by Marcus Leal, Senior Product Manager for Google Play Store Our Modern Android Developer tools and APIs are designed to help you build high quality apps your users love, and this extends to form factors such as wearables. Earlier this year we announced udates to our developer tools APIs to support you in building seamless, high quality apps for your users. Today we’re announcing new guidelines to help support you in building these experiences. Updated quality guidelines for Wear OS appsWe’ve started by updating our guidelines to give you a better understanding of what we expect of quality apps on Google Play, and what your users will be expecting for Wear OS 3.0. Some of the major changes are summarized below:
Many developers are already meeting these requirements and won’t need to make many of these changes when migrating to Wear OS 3.0. However, we recommend familiarizing yourself with the full updated guidelines here. Updated screenshot requirements for Wear OS appsWith these quality guideline updates, we’re also rolling out changes to the Play Store to improve the discoverability of Wear OS apps. In July we launched the ability for people to filter for Wear OS and Watch Faces when searching for apps within the Play Store. We’re now releasing new screenshot requirements for Wear OS apps to help users better understand your Wear OS app’s functionality when discovering new apps. Starting October 13th, Wear OS apps will need to meet these screenshot requirements to be published on Google Play:
Similar to mobile, your store listing and the quality of your Wear OS app will influence your search ranking and opportunities for merchandising. In order to put your best foot forward on Google Play, we recommend thinking about the following considerations:
We hope this transparency helps your development process, and we look forward to seeing more seamless Wear OS experiences on Google Play. Happy Coding! Raising the quality bar with updated guidelines for Wear OS 3.0 published first on https://alanneumann.tumblr.com/ via Tumblr Raising the quality bar with updated guidelines for Wear OS 3.0 UX design focuses on the user flow and how easy it is for the user to accomplish a desired goal. For this reason, whenever I create a UI, I take into account three things: heuristic thinking, choice modelling and compromise effect. I’ll use the Gmail and Amazon sign-in pages as an example to explain these concepts. Tab order is important when you navigate a form with the keyboard. Users should be able to tab through the elements in a logical order. Take a look at these two pages: Amazon implements the UI correctly by following these three principles: Heuristic thinking: Choice modelling: Compromise effect: It’s worth mentioning that using tabindex values greater than zero to control the tab order is considered a bad idea. The tabindex attribute is often set by developers who don’t have any idea of what the user expects. The tab order should follow a pattern that is logical from the user’s perspective. More info: Heuristic Thinking, Choice Modelling and Compromise Effect published first on https://alanneumann.tumblr.com/ via Tumblr Heuristic Thinking, Choice Modelling and Compromise Effect Posted by Kateryna Semenova, Android Developer Relations Engineer Executive SummaryDuolingo’s app began to experience growing pains due to scalability issues in their Android software architecture. They were able to solve these performance problems and regain developer productivity, by refactoring to a Model-View-ViewModel architecture and using Android Jetpack’s Dagger and Hilt for dependency injection. To learn more about how this impacted their business, read the accompanying article here. IntroductionDuolingo is the world’s most popular language learning app, with over ten million daily learners, because they’ve managed to make something people found daunting feel easy and fun. This continued success relies on a constant stream of innovations and updates — and a smooth-running app that can deliver all of them. To Duolingo, a single unresponsive app in a device anywhere in the world could mean a learner potentially discouraged. This commits them to app excellence, particularly on the Android devices used by sixty percent of their learners, including their CEO, who keeps track of the app from an entry-level phone. And so, when Duolingo’s Android development team registered an increase in “App not Responding” errors, dropped frames — and even received a hand-written complaint — they took action immediately. Their situation wasn’t that uncommon. Apps that lack scalable architecture and clear best practices often perform well at the beginning but show signs of technical debt as they grow. Duolingo’s Android codebase was designed to allow them to add and release new features rapidly, but the lack of an agreed-upon architecture was manifesting in increasingly frequent performance regressions. It was starting to suffer from unreliable frame rates, visually inconsistent or broken interactions, and a growing assortment of new bugs. These regressions not only inconvenienced learners but also cost the team substantial development effort to diagnose and repair. Duolingo’s Android development team realized that if they wanted to keep shipping new features while providing the target level of user experience, a new approach to their codebase was needed. Discovery First, they had to get to the bottom of what exactly was going on. A deep dive into the numbers uncovered that, as they added new functionality, the app’s rendering performance was regressing 5-10% every month. In fact, one particularly unwieldy release had increased crashes by 10%, slowed frame renders by 25%, and saw lessons starting 70% slower on entry-level devices. Further analysis of their code led them to the conclusion that most of the app’s issues could be traced back to a single bottleneck: a global state object called DuoState, which was responsible for maintaining state across different features of the app. A number of popular features (like experience points and daily streak tracking) were using it to access vital information. Centralizing their data in this way had once enabled the team to iterate rapidly. They simply added properties to DuoState whenever a new feature needed to share information across the app. But now the unoptimized and frequent access to the object was causing increasing performance regressions. DuoState was so tightly coupled to the entire codebase that even small changes could impact the rest of the app. The team feared that a minor new feature could have the unforeseen side effect of triggering many internal updates to the app, causing the entire release to be too slow for many devices. These performance regressions became more frequent as the app grew, and the team onboarded new engineers to keep up with the accelerating product roadmap. In 2020, as they added more developers, they were starting to see significant regressions cropping up as often as every 90 days. Upon closer inspection, the likelihood of a regression in a given release was proportional to the number of changes it implemented. At this rate, these regressions would completely derail the product roadmap within a few years. This outdated architecture had become a bottleneck for both the performance of the app and the velocity of the team. After much internal debate, they stopped development of new features, including some closely tied to their bottom line. For two full months, Duolingo’s development team went all-in on refactoring their Android app in an effort they called the “Android Reboot”. The Android RebootOne of the team’s first key takeaways was that their code lacked clear boundaries. The DuoState object was readily available at any point in the code, inviting developers to access it frequently in inefficient ways. They needed to create a greater separation of concerns within the codebase. They decided to tease apart each feature into its own, clearly-defined module, using the Model-View-ViewModel architectural pattern. MVVM allowed them to remove calls to the monolithic DuoState object, letting many modules work in separate threads. The team’s familiarity with MVVM, and Google’s support for it, made it an obvious choice. It allowed them to clearly document what logic should go into what files (including views, view models and repositories). This helped make their feature architecture more consistent. With a clear path to follow, the team quickly began refactoring their monolithic code into sets of classes with clear boundaries and responsibilities. Along with MVVM, the team used Dagger and Hilt (also included in Android Jetpack) to implement repository patterns to replace DuoState. Dagger generates clear readable code that provides verbose error logging designed to help developers understand exactly what their code is doing, eliminating dead stack traces to reflected properties; and Hilt reduces the amount of boilerplate code needed to write for this. This new architecture allowed the team to split DuoState into smaller objects. This immediately reduced unnecessary coupling between domains. For example, the code responsible for tracking a user’s progress could now access their experience points but not the number of times they’ve logged in during a month. These new architecture guidelines meant that while no single thing was too difficult to change, it took coordination and planning to change it across the app. Implementing the new architecture across the code base drove significant performance gains in aggregate. MVVM architecture facilitates a separation of concerns between the domain data, the interface the learners see, and the logic for how these two realms interact. It gave Duolingo’s developers a more deliberate way to control how the app responds to internal state updates. They could now develop more complex user experiences without the risk of triggering regressions, or affecting the underlying business rules. Developer ProductivityIn the past, inconsistent application of development patterns made different parts of the codebase harder to understand and maintain. Without consensus, each developer implemented code as they saw fit. MVVM, Dagger, and Hilt, provided the team with a more detailed understanding of how new features should be implemented. Following these best practices made the code easier and more predictable. Developers could now assist in debugging features that they hadn’t originally worked on. And new developers could be onboarded more efficiently; as long as they understood the architecture, they could contribute meaningfully right away. This new clarity significantly boosted the team’s development velocity. Ensuring QualityCrucially, the new architecture also revealed that certain animation features in the app were underperforming on entry-level devices. Accordingly, the other core focus of the Android Reboot was the reduction of jank, dropped frames, and “App Not Responding” (ANR) errors. The team used repository patterns to help streamline the sharing of data between threads. These patterns ensured that they could more efficiently use device resources with multiple threaded modules. Moving work off the main thread improved responsiveness, overall frame rate, and led to smoother animations on entry-level devices. Performance on flagship devices improved as well. A Better Overall Android ExperienceIn the six months working with the new architecture, Duolingo’s Android team has continued to ship new features without recording significant performance regressions. The days where they had to halt feature production to hunt and fix bugs are safely behind them. The app’s daily ANR rate dropped 41%. The percentage of time that the app’s frame rate fell below target decreased by 28%. And importantly, users experienced a 40% increase in speed when scrolling through lessons, the leaderboard, and stories in the app. The reboot allowed Duolingo to consistently provide their trademark fun, effective, and delightful language learning experience on a much wider range of Android devices. ConclusionDuolingo’s dedication to their mission made them the world’s top app in the language learning space. Their commitment to app excellence — creating cutting edge educational experiences without compromising accessibility — is what kept them there. If you’re interested in getting your team on board for your own Android Reboot, check out our condensed case study for product owners and executives linked here. Performance and Velocity: How Duolingo Adopted MVVM on Android published first on https://alanneumann.tumblr.com/ via Tumblr Performance and Velocity: How Duolingo Adopted MVVM on Android Posted by Tom Grinsted, Scott Lin, and Tat Yang Koh, Product Managers at Google Play Ratings and reviews are important. They provide valuable quantitative and qualitative feedback on your users’ reported experience of your app or game, and the broader service that you offer. That’s why they’re one of the signals people use when deciding what to download on Google Play. We’ve heard from both Play Store users and developers that ratings and reviews could be more helpful. This is especially true when ratings from one area unfairly impact another — like when a bug that only impacted a single country negatively affects the app’s rating everywhere; or when positive improvements in a tablet experience are overlooked because of the number of users on phones. So we’re starting a multi-quarter program of improvements to make ratings more personalized and indicative of the experience each individual user can expect, and to make them easier to navigate and use for developers:
We understand that many developers closely monitor the ratings that their potential users see, so we’re making sure you have plenty of notice about these upcoming changes. We’ve also made enhancements to Play Console to help you understand your ratings and reviews - especially across form-factors. Changes to Google Play ConsoleDevice type insightsExpanding your support for different device types is one of the most important and impactful changes you can make to your user interfaces. Adding tablet-optimized layouts or better mouse and keyboard support for Chrome OS can result in a step-change in the quality of your users’ experience, which in turn influences their ratings and reviews. New Device type ratings insights are available in Play Console ratings overview and breakdown pages To make it easier to spot opportunities across various device types and track the impact of enhanced experiences, we’ve added new Device Type dimensions to the ratings page. We’ve also added a Device Type filter to your reviews so you can easily see how your tablet users are rating you, or what your users on Chrome OS say in their reviews. More flexible date and period selectionsMany of you have told us that you want to access more granular data than our selectors allowed. So, we’ve broken down your segmentation options and made them easier to use. You can now independently select the time period you want to plot (from the last 28 days through to your app’s complete lifetime), and how you want your ratings data to be aggregated (daily, weekly, or every 28 days). This allows you to access more granular data over longer periods of time. Select any time range and aggregation period independently to find the ratings data you want Download data easilyWe’ve also enabled CSV downloads of your average data and rating distributions. Combined with the new data selection options, you can easily query and download much more of your data and perform offline analysis. For example, you could download your entire history of daily ratings distributions and correlate it in a spreadsheet with customer service contacts. Access and download all your data including ratings breakdowns directly from the overview page All of these changes are live in Play Console now. Visit Ratings analysis and Reviews to try them out.* Upcoming changes to ratings in Google PlayRatings help people decide which apps to download and they are taken into consideration for featuring and placement on Play Store. But because the app experience can vary depending on the user’s region and device type, aggregate ratings don’t always tell the whole story. That’s why, starting in November 2021, we’re going to change the ratings that individual users see based on where they’re registered, and later in the year what device they’re using. From November, this means that users on phones will see specific ratings for the country or region they’re based in. So a user in Japan will see app ratings generated from those submitted by other Japanese users. Early next year we’ll further update ratings to reflect the device type users are browsing Play on, whether it’s: tablets and foldables, Chrome OS, Wear, or Auto. This will give users a better impression of the experience that they can expect for the device they’re using. We recommend you take a look at your form-factor ratings today - especially for tablets where growth is very strong - to see if you should invest in optimising your users’ experiences. We understand that as a developer you will want to make sure you understand and get ahead of any major shifts in your user-visible ratings. So at least 10 weeks before any change in Play Store, we’ll automatically analyze the change your app can expect to see and reach out to any developer that will see a change of more that 0.2 stars on any device type in a key market (one with >5% of your store listing visitors). This will give you time to plan if you want to make key changes to your app. These changes in Google Play will start to roll out from November with country or region-specific ratings. Look out for messages about your ratings in your Play Console Inbox towards the end of this year, and don’t forget that you can get ahead by checking your ratings by country and device-type today. *Please note you need a Play Console account to access these links. How useful did you find this blog post? Making Ratings and Reviews better for users and developers published first on https://alanneumann.tumblr.com/ via Tumblr Making Ratings and Reviews better for users and developers |
About Us
We are a small team of 5 guys and we review Android app; if we find it good we review & publish. It reflects our commitment to providing the highest level of Android app reviews, breaking news, and Android promo / discount codes to our growing, loyal, and greatly appreciated audience. |