Saturday, February 18, 2017
Developer tips for success with Player Analytics and Google Play games services
Developer tips for success with Player Analytics and Google Play games services
Posted by, Lily Sheringham, Developer Marketing at Google Play
Editors note: As part of our series featuring tips from developers, we spoke to some popular game developers to find out how they use Player Analytics and Google Play game services to find success on Google Play. - Ed.
Google Play games services, available in the Developer Console, allows you to add features such as achievements and leaderboards to your games. Google Play games services provides Player Analytics, a free games-specific analytics tool, in the Developer Console Game services tab. You can use the reports to understand how players are progressing, spending, and churning backed by a data-driven approach.

Bombsquad grows revenue by 140% per user with Player Analytics
Independent developer Eric Froemling, initially created the game Bombsquad as a hobby, but now relies on it as his livelihood. Last year, he switched the business model of the game from paid to free-to-play. By using Player Analytics, he was able to improve player retention and monetization in the game, achieving a 140% increase in the average revenue per daily active user (ARPDAU).
Watch the video below to learn how Eric uses Player Analytics and the Developer Console to improve gamers experience, while increasing retention and monetization.

Tips from Auxbrain for success with Google Play games services
Kevin Pazirandeh, founder and CEO of games developer Auxbrain, creator of Zombie Highway, provides insight into how they use Google Play games services, and comments:
While there are a few exceptions, I have not run into a better measure of engagement, and perhaps more importantly, a measure for change in engagement, than the retention table. For the uninitiated, a daily retention table gives you the % of players who return on the nth day after their first play. Comparing retention rates of two similar games can give you an immediate signal if you are doing something right or wrong.
Kevin shares his top tips on how to best use the analytics tools in Google Play games services:
- You get Player Analytics for free - If youve implemented Google Play game services in your games, check out Player Analytics under Game services in the Developer Console, youll find you are getting analytics data already.
- Never assume change is for the better - Players may not view changes in your game as the improvement you had hoped they were. So when you make a change, have a strategy for measuring the result. Where you cannot find a way to measure the changes impact with Player Analytics, consider not making it and prioritize those changes you can measure.
- Use achievements and events to track player progress - If you add achievements or events you can use the Player progression report or Event viewer to track player progress. Youll quickly find out where players are struggling or churning, and can look for ways to help move players on.
- Use sign-in to get more data - The more data about player behavior you collect, the more meaningful the reports in Player Analytics become. The best way to increase the data collected is to get more players signed-in. Auto sign-in players, and provide a Play game services start point on the first screen (after any tutorial flow) for those that dont sign-in first time.
- Track your player engagement with Retention tables - The Retention table report lets you see where players are turning away, over time. Compare retention before and after changes to understand their impact, or between similar games to see if different designs decisions are turning players away earlier or later.
Get started with Google Play Games Services or learn more about products and best practices that will help you grow your business on Google Play globally.
Available link for download
Thursday, February 16, 2017
Improvements for smaller app downloads on Google Play
Improvements for smaller app downloads on Google Play
Posted by Anthony Morris, SWE Google Play
Google Play continues to grow rapidly, as Android users installed over 65 billion apps in the last year from the Google Play Store. Were also seeing developers move to update their apps more frequently to push great new content, patch security vulnerabilities, and iterate quickly on user feedback.
However, many users are sensitive to the amount of data they use, especially if they are not on Wi-Fi. Google Play is investing in improvements to reduce the data that needs to be transferred for app installs and updates, while making data cost more transparent to users.
Read on to understand the updates and learn some tips for ways to optimize the size of your APK.
New Delta algorithm to reduce the size of app updates
For approximately 98% of app updates from the Play Store, only changes (deltas) to APK files are downloaded and merged with the existing files, reducing the size of updates. We recently rolled out a delta algorithm, bsdiff, that further reduces patches by up to 50% or more compared to the previous algorithm. Bsdiff is specifically targeted to produce more efficient deltas of native libraries by taking advantage of the specific ways in which compiled native code changes between versions. To be most effective, native libraries should be stored uncompressed (compression interferes with delta algorithms).
An example from Chrome:
| Patch Description | Previous patch size | Bsdiff Size |
| M46 to M47 major update | 22.8 MB | 12.9 MB |
| M47 minor update | 15.3 MB | 3.6 MB |
Apps that dont have uncompressed native libraries can see a 5% decrease in size on average, compared to the previous delta algorithm.
Applying the delta algorithm to APK Expansion Files to further reduce update size
APK Expansion Files allow you to include additional large files up to 2GB in size (e.g. high resolution graphics or media files) with your app, which is especially popular with games. We have recently expanded our delta and compression algorithms to apply to these APK Expansion Files in addition to APKs, reducing the download size of initial installs by 12%, and updates by 65% on average.
Clearer size information in the Play Store
Alongside the improvements to reduce download size, we also made information displayed about data used and download sizes in the Play Store clearer. You can now see actual download sizes, not the APK file size, in the Play Store. If you already have an app, you will only see the update size. These changes are rolling out now.


Tips to reduce your download sizes
1. Optimize for the right size measurements: Users care about download size (i.e. how many bytes are transferred when installing/updating an app), and they care about disk size (i.e. how much space the app takes up on disk). Its important to note that neither of these are the same as the original APK file size nor necessarily correlated.
Chrome example:
| Compressed Native Library | Uncompressed Native Library | |
| APK Size | 39MB | 52MB (+25%) |
| Download size (install) | 29MB | 29MB (no change) |
| Download size (update) | 29MB | 21MB (-29%) |
| Disk size | 71MB | 52MB (-26%) |
Chrome found that initial download size remained the same by not compressing the native library in their APK, while the APK size increased, because Google Play already performs compression for downloads. They also found that the update size decreased, as deltas are more effective with uncompressed files, and disk size decreased as you no longer need an compressed copy of the native library:
2. Reduce your APK size: Remove unnecessary data from the APK like unused resources and code.
3. Optimize parts of your APK to make them smaller: Using more efficient file formats, for example by using WebP instead of JPEG, or by using Proguard to remove unused code.
Available link for download
Sunday, February 12, 2017
Iterate faster on Google Play with improved beta testing
Iterate faster on Google Play with improved beta testing
Posted by Ellie Powers, Product Manager, Google Play
Today, Google Play is making it easier for you to manage beta tests and get your users to join them. Since we launched beta testing two years ago, developers have told us that its become a critical part of their workflow in testing ideas, gathering rapid feedback, and improving their apps. In fact, weve found that 80 percent of developers with popular apps routinely run beta tests as part of their workflow.
Improvements to managing a beta test in the Developer Console
Currently, the Google Play Developer Console lets developers release early versions of their app to selected users as an alpha or beta test before pushing updates to full production. The select user group downloads the app on Google Play as normal, but cant review or rate it on the store. This gives you time to address bugs and other issues without negatively impacting your app listing.
Based on your feedback, were launching new features to more effectively manage your beta tests, and enable users to join with one click.
- NEW! Open beta Use an open beta when you want any user who has the link to be able to join your beta with just one click. One of the advantages of an open beta is that it allows you to scale to a large number of testers. However, you can also limit the maximum number of users who can join.
- NEW! Closed beta using email addresses If you want to restrict which users can access your beta, you have a new option: you can now set up a closed beta using lists of individual email addresses which you can add individually or upload as a .csv file. These users will be able to join your beta via a one-click opt-in link.
- Closed beta with Google+ community or Google Group This is the option that youve been using today, and you can continue to use betas with Google+ communities or Google Groups. You will also be able to move to an open beta while maintaining your existing testers.
How developers are finding success with beta testing
Beta testing is one of the fast iteration features of Google Play and Android that help drive success for developers like Wooga, the creators of hit games Diamond Dash, Jelly Splash, and Agent Alice. Find out more about how Wooga iterates on Android first from Sebastian Kriese, Head of Partnerships, and Pal Tamas Feher, Head of Engineering.
Kabam is a global leader in AAA quality mobile games developed in partnership with Hollywood studios for such franchises such as Fast & Furious, Marvel, Star Wars and The Hobbit. Beta testing helps Kabam engineers perfect the gameplay for Android devices before launch. The ability to receive pointed feedback and rapidly reiterate via alpha/beta testing on Google Play has been extremely beneficial to our worldwide launches, said Kabam VP Rob Oshima.
Matt Small, Co-Founder of Vector Unit recently told us how theyve been using beta testing extensively to improve Beach Buggy Racing and uncover issues they may not have found otherwise. You can read Matts blog post about beta testing on Google Play on Gamasutra to hear about their experience. Weve picked a few of Matts tips and shared them below:
- Limit more sensitive builds to a closed beta where you invite individual testers via email addresses. Once glaring problems are ironed out, publish your app to an open beta to gather feedback from a wider audience before going to production.
- Set expectations early. Let users know about the risks of beta testing (e.g. the software may not be stable) and tell them what youre looking for in their feedback.
- Encourage critical feedback. Thank people when their criticisms are thoughtful and clearly explained and try to steer less-helpful feedback in a more productive direction.
- Respond quickly. The more people see actual responses from the game developer, the more encouraged they are to participate.
- Enable Google Play game services. To let testers access features like Achievements and Leaderboards before they are published, go into the Google Play game services testing panel and enable them.
We hope this update to beta testing makes it easier for you to test your app and gather valuable feedback and that these tips help you conduct successful tests. Visit the Developer Console Help Center to find out more about setting up beta testing for your app.
+Android Developers
Available link for download
Saturday, February 4, 2017
Android Developer Story StoryToys finds success in the ‘Family’ section on Google Play
Android Developer Story StoryToys finds success in the ‘Family’ section on Google Play
Posted by Lily Sheringham, Google Play team
Based in Dublin, Ireland, StoryToys is a leading publisher of interactive books and games for children. Like most kids app developers, they faced the challenges of engaging with the right audiences to get their content discovered. Since the launch of the Family section on Google Play, StoryToys has experienced an uplift of 270% in revenue and an increase of 1300% in downloads.
Hear Emmet ONeill, Chief Product Officer, and Gavin Barrett, Commercial Director, discuss how the Family section creates a trusted and creative space for families to find new content. Also hear how beta testing, localized pricing and more, has allowed StoryToys flagship app, My Very Hungry Caterpillar, to significantly increase engagement and revenue.
Learn more about Google Play for Families and get the Playbook for Developers app to stay up-to-date with more features and best practices that will help you grow a successful business on Google Play.
Available link for download
Friday, February 3, 2017
Android Developer Story Vietnamese games developer Divmob finds more users with localized pricing on Google Play
Android Developer Story Vietnamese games developer Divmob finds more users with localized pricing on Google Play
Posted by Lily Sheringham, Google Play team
Based in Ho Chi Minh City in Vietnam, games developer Divmob has grown quickly from an original team of five people to 40 employees since it was founded three years ago. Divmob now has over 40 million downloads across its various titles, including the popular game, Epic Heroes War.
Watch Ngo Van Luyen, CEO & Founder at Divmob, and his team explain how introducing sub-dollar pricing in various markets resulted in a 300% increase in daily transactions, and increased the number of paying users threefold.
Find out more about local pricing models on Google Play
We recently introduced new features in the Google Play Developer Console to help you meet local expectations when setting prices, to make purchases more attractive to your users. The Developer Console will now automatically round pricing to local conventions in each market, and you can also set up pricing templates to manage pricing across multiple currencies more efficiently, and easily make bulk changes to the prices of multiple apps and in-app products in a single click. Learn more about the improved local pricing tools.
Available link for download
Thursday, February 2, 2017
Google Play Music Still Requires Flash
Google Play Music Still Requires Flash
I uninstalled Flash Player on my computer, now that most sites no longer need it. Adobes Flash Player is still bundled with Chrome, so I had to disable it from the chrome://plugins/ page.
One of the only Google services that still requires Flash is Google Play Music, but only if you dont use Chrome or Internet Explorer 11. I tried opening Google Play Music in Firefox and Safari and got this message: "Missing Flash Player. You need the latest Adobe Flash Player to listen to music."

Theres actually a Lab experiment called "HTML5 audio" in the settings and its grayed out and disabled. It claims that it allows you to "listen to your music without the need for Flash. Support for this lab is still experimental, and it may not work in all cases," informs the description.

Well, it looks like the Lab experiment only works in Chrome, not in other browsers. Its hard to tell why HTML5 audio is still an experiment and not a regular feature that works in all browsers. YouTubes HTML5 player works well in most browsers and Google Play Music uses the same back-end.
Available link for download
Saturday, January 14, 2017
Games developer Dots share their Do’s and Don’ts for improving your visibility on Google Play
Games developer Dots share their Do’s and Don’ts for improving your visibility on Google Play
Editors note: A few weeks ago we shared some tips from game developer, Seriously, on how theyve been using notifications successfully to drive ongoing engagement. This week, were sharing tips from Christian Calderon at US game developer, Dots, on how to successfully optimize your Play Store Listing. -Ed.

A well thought-out Google Play store listing can significantly improve the discoverability of your app or game and drive installations. With the recent launch of Store Listing Experiments on the Google Play Developer Console, you can now conduct A/B tests on the text and graphics of your store listing page and use the data to make more informed decisions.
Dots is a US-founded game developer which released the popular game, Dots, and its addictive sequel, TwoDots. Dots used its store listings to showcase its brands and improve conversions by letting players know what to expect.
Christian Calderon, Head of Marketing for Dots, shared his top tips with us on store listings and visibility on Google Play.
Dos and Donts for optimizing store listings on Google Play
| Dos | Donts |
| Do be creative and unique with the icon. Try to visually convince the user that your product is interesting and in alignment with what they are looking for. | Dont spam keywords in your app title. Keep the title short, original and thoughtful and keep your brand in mind when representing your product offering. |
| Do remember to quickly respond to reviews and implement a scalable strategy to incorporate feedback into your product offering. App ratings are important social proof that your product is well liked. | Dont overload the short description. Keep it concise. It should be used as a call-to-action to address your products core value proposition and invite the user to install the application. Remember to consider SEO best practices. |
| Do invest in a strong overall paid and organic acquisition strategy. More downloads will make your product seem more credible to users, increasing the likeliness that a user will install your app. | Dont overuse text in your screenshots. They should create a visual narrative for whats in your game and help users visualize your product offering, using localization where possible. |
| Do link your Google Play store listing to your website, social media accounts, press releases and any of your consumer-facing channels that may drive organic visibility to your target market. This can impact your search positioning. | Dont have a negative, too short or confusing message in your Whats New copy. Let users know what updates, product changes or bug fixes have been implemented in new versions. Keep your copy buoyant, informative, concise and clear. |
| Do use Video Visualization to narrate the core value proposition. For TwoDots, our highest converting videos consist of gameplay, showcasing features and events within the game that let the player know exactly what to expect. | Dont flood the user with information in the page description. Keep the body of the page description organized and concise and test different structural patterns that works best for you and your product! |
Use Google Play Store Listing Experiments to increase your installs
As part of the 100 Days of Google Dev video series, Kobi Glick from the Google Play team explains how to test different graphics and text on your app or games Play Store listing to increase conversions using the new Store Listing Experiments feature in the Developer Console.
Find out more about using Store Listing Experiments to turn more of your visits into installs.
Available link for download
Saturday, January 7, 2017
Grow your business on Google Play with help from the new Playbook for Developers app
Grow your business on Google Play with help from the new Playbook for Developers app
Posted by Dom Elliott, the Google Play team
| Today, the Playbook for Developers mobile app is now generally available for Android devices. The app helps you stay up-to-date with the features and best practices to grow your business on Google Play. Thanks to all our beta testers over the last six weeks whose feedback helped us tweak and refine the app in preparation for launch. Heres how you read and watch content in the Playbook for Developers app:
| ![]() |

The app supports Android 5.0 and above. If youre on an older device, check out our ebook, The Secrets to App Success on Google Play. We will be adding and updating content in the app to help you stay up-to-date and grow your business. Get the Playbook for Developers app today and then give us your feedback. The app is also available in the following languages: Bahasa Indonesia, Deutsch, español (Latinoamérica), le français, português do Brasil, ti?ng Vi?t, ??????? ?????, ???, ?? (??), ?? (??), and ???.
This is the second app weve released for Google Play developers. Get the Google Play Developer Console app to review your apps performance statistics and financial data, get notified about your apps status and publishing changes, and read and reply to user reviews on the go.

Available link for download
Wednesday, January 4, 2017
Google Play services 8 1 Get ready for Marshmallow!
Google Play services 8 1 Get ready for Marshmallow!
Posted by, Laurence Moroney, Developer Advocate
With the rollout of Google Play services 8.1 finally finished, theres a lot of new information to share with developers about the release!
Marshmallow Permissions
Android 6.0 (Marshmallow) has introduced a new permissions model allowing users to control app permissions at runtime. As an app developer, its important for you to adopt this and give your users good control over the permissions your app needs. You can find more details here.
If your app is using Google Play services SDK versions prior to 8.1, you must update to use this new version to ensure your app is fully compatible with Android 6.0. This will enable you to manage the permission flows appropriately for your app and avoid any potential connection issues. For more details, and a step-by-step guide to what your app should do for the best user experience, take a look at this blog post on the Android Developers site.

App Invites
App Invites allows you to grow your apps audience by letting existing Android and iOS users invite their Google contacts via email or SMS to try your app out. Google Play services 8.1 adds the ability for developers to customize the email invitation, including adding a custom image, and specifying a call-to-action button text. These improvements should help developers increase user engagement and conversions with app invites.
Ambient Mode Maps
Android Wear provides a feature called ambient mode, enabling apps to stay visible, even when they arent actively being used. Now, with Google Play services 8.1, the Google Maps Android API supports ambient mode. In this mode, a simplified low-color rendering of the map will be seen. This reduces power consumption by lighting fewer pixels, but the camera and zoom level are retained, so user context will be kept. To learn more about ambient mode, check out this blog post.
Nearby Status Listener
Google Nearby allows you to build simple interactions between nearby devices. A new addition in Google Play services allows your app to receive callbacks when an active Nearby publish or subscribe expires. This frees you from tracking the TTL and allows your apps UI to accurately reflect whether Nearby is active or not.
Play Games Player Stats API
The new Play Games Player Stats API allows you to build better, smarter, games. It will let you tailor user experiences to specific segments of players and different stages of the player lifecycle. For example, you can give your most valuable players that are returning from a break in play a special welcome back message and reward.
Breaking Changes
In this release, there are some changes to GoogleApiClient and PendingResult, making them abstract classes, which may lead to breaking changes in your code. Learn more about these changes and how to handle them in the release notes.
SDK Now available!
You can get started developing today by downloading the Google Play services SDK from the Android SDK Manager. To learn more about Google Play services and the APIs available to you through it, visit our documentation on Google Developers.

Available link for download
Tuesday, January 3, 2017
Get the guide to News app success on Google Play and see how Nabd engages readers with Material Design
Get the guide to News app success on Google Play and see how Nabd engages readers with Material Design
Posted by Tamzin Taylor - Strategic Partner Lead, Google Play

Today were releasing The News Publisher Playbook, where you will learn best practices for developing a successful news mobile strategy on Android. This is a new companion guide to our business playbook for developers, The Secrets to App Success on Google Play, focused on the news apps segment.
The guide includes tips and useful resources to help you optimize your news content on mobile, identifying the best distribution channels to reach the right audience, build your brand and maximize your revenue.
You will find tips on mobile website optimization, how to create a Google Play Newsstand edition, and how to improve your native app. You will also get an overview of ways to acquire and engage your readers as well as how to monetize and grow your revenue.
Once youve checked out the guide, wed love to hear your feedback, so we can continue to improve our developer resources. Please let us know what you think.
Android Developer Story: Nabd improves reader engagement with Material Design

Get the News Publisher Playbook to help you find success on Google Play.

Available link for download
Monday, January 2, 2017
Get your apps and games ready for space with Google Play April Fools
Get your apps and games ready for space with Google Play April Fools
Posted by Lily Sheringham, Google Play team
Google Play lets you distribute your apps and games to over 1 billion active Android users around the world. With advances in space exploration and the advent of galactic tourism, there will be a high number of users beyond this world that developers need to start thinking about, too. Google Play can now help you reach them. Weve added new features to the Google Play Developer Console and updated the material design guidelines, to help you design, test, and distribute your apps and games in space.
Heres a look at how The Guardian, one of the largest English-news organizations in the world, enhanced its Android app to enable astronauts and space travellers to stay informed and up-to-date, while in orbit or on the surface of the moon.
"I am pleased to have The Guardians application to test the growing Interplanetary Internet" says Vint Cerf, distinguished visiting scientist at the Jet Propulsion Laboratory and Googles Chief Internet Evangelist. "The interstellar version is in development and Im looking forward to having more Google Play apps and games tested in space flight."
Get your apps and games ready for take off today.
Available link for download
Google Play Services 8 4 SDK is available
Google Play Services 8 4 SDK is available
Posted by Laurence Moroney, Developer Advocate
Were delighted to announce the availability of Google Play services 8.4. Theres a lot of new information to share with you about whats available to you in this release.
Custom Email App Invites
App Invites is a technology that enables your users to share apps with people they know. In Google Play services 8.4 weve updated this to make it easier for them to share via email. Before this you could create a custom email that contained user defined text and an image, but now were allowing you to add content from the app directly into the message. It allows you to fully define the email body using HTML, and set the email subject line. So, for example, if you have a favorite cooking app that you want to share with your friends, your invite to use the app can include a favorite recipe from the app. They get the immediate benefit of being able to access the desired content, giving them a more informed choice about whether or not they decide to install the app to get richer and more content. Check out the App Invites sample on GitHub here.
Predicting User spend and churn in games
The Play Games Analytics developer experience is designed to enable game developers to better understand, manage, and optimize game experiences throughout the player lifecycle. With this in mind, weve extended the Player Stats API to help you better understand your players behavior, and based on this, entice them to stay in your game.
The churn prediction method will return data on the probability that the player will churn, i.e., stop playing the game. 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 something in the game. Its up to you how to handle this data, but -- for example -- if theres a low probability that the player will spend something, you could provide discounted in-app purchases or show ads.
Fused Location Provider Updates
The Fused Location Provider (FLP) in Google Play services provides location to your apps using a number of sensors, including GPS, WiFi and Cell Towers.
When desiring to save battery power, and using coarse updates, the FLP doesnt use Global Positioning Services (GPS), and instead uses WiFi and Cell tower signals. In Google Play services 8.4, we have greatly improved how the FLP detects location from cell towers. Prior to this, we would get the location information relative to only the primary cell tower. Now, the FLP takes the primary tower and other towers nearby to provide a more accurate location. Weve also improved location detection from WiFi access points, particularly in areas where GPS is not available -- such as indoors.
Maps API Improvements
Have you ever wished you could easily handle a tap on a suburb without having to add another layer on the map to intercept the taps? Weve added an onClickListener for polygons, so you can easily add transparent polygons and intercept the taps directly. Weve also added on click listeners to polylines and ground overlays.
Heres how you can use a listener to detect a click on a polygon:
map.setOnPolygonClickListener(new GoogleMap.OnPolygonClickListener() { @Override public void onPolygonClick(Polygon polygon) { ... } }); Info windows now also offer an OnInfoWindowCloseListener and an OnInfoWindowLongClickListener. The on close listener is particularly useful if you wish to zoom back out on the map after the user has looked at the detail associated with a particular marker.
mMap.setOnInfoWindowCloseListener(new GoogleMap.OnInfoWindowCloseListener() {...}); mMap.setOnInfoWindowLongClickListener(new GoogleMap.OnInfoWindowLongClickListener() {...}); For more details, and an example that uses these, see the ApiDemos sample on GitHub and check out the historical changes to this sample, so you can see how the new APIs work. Also see the Release Notes.
Support for Aztec bar codes
In Google Play services 7.8, we launched Vision APIs that supported face and barcode detection. One bar code format we didnt support was Aztec bar codes, so with Google Play services 8.4 weve now added support for these.
Applications using BarcodeDetector in its default configuration (no barcode format restrictions) will automatically start decoding AZTEC codes.
Background Beacon Scanning
With Google Play services 8.4, the Nearby Messages API now supports background scanning for Eddystone, the open beacon format from Google. With this update, your app can be woken up when a BLE beacon is sighted. Back in July, Google Play Services 7.8 introduced the Nearby Messages API with a simple publish-subscribe interface. In the case of beacons, developers publish content by adding attachments to beacon records using Proximity Beacon API. These attachments are served back to your app when Nearby sights a beacon of interest.
New methods that weve added include a subscribe method for background beacon subscriptions where BLE scans are triggered at screen-on events; an associated unsubscribe event; and the ability to handle intents that you get when the Nearby API calls back during a background subscription.
Fitness Platform HistoryApi Improvements
We now support consistent step counts across the Google Fit app, other fitness apps and Android Wear watch faces with the HistoryApi.readDailyTotal() method. Please see the following documentation for more detail: https://developers.google.com/fit/android/history#read_daily_total_data?utm_campaign=play services_series_launch_121815&utm_source=anddev&utm_medium=blog
We also have a new HistoryApi.updateData() method. This method allows you to update data in one API call without having to delete and insert with two calls.
Place Picker Autocomplete Widget
Today we are announcing the mobile autocomplete widget, the latest addition to our existing set of programmatic autocomplete features on Android and iOS, as well as the addition of Autocomplete to our place picker widget. Autocomplete functionality assists users by automatically completing the name and address of a place as they type. Widgets make it even easier for developers to add autocomplete functionality to their application with just a small amount of code. Learn more about this at this blog post.

Available link for download
Friday, December 30, 2016
Face Detection in Google Play services
Face Detection in Google Play services
Posted by Laurence Moroney, Developer Advocate
With the release of Google Play services 7.8, we announced the addition of new Mobile Vision APIs, which includes a new Face API that finds human faces in images and video better and faster than before. This API is also smarter at distinguishing faces at different orientations and with different facial features facial expressions.
Face Detection
Face Detection is a leap forward from the previous Android FaceDetector.Face API. Its designed to better detect human faces in images and video for easier editing. Its smart enough to detect faces even at different orientations -- so if your subjects head is turned sideways, it can detect it. Specific landmarks can also be detected on faces, such as the eyes, the nose, and the edges of the lips.
| Important Note This is not a face recognition API. Instead, the new API simply detects areas in the image or video that are human faces. It also infers from changes in the position frame to frame that faces in consecutive frames of video are the same face. If a face leaves the field of view, and re-enters, it isnt recognized as a previously detected face. |
Detecting a face
When the API detects a human face, it is returned as a Face object. The Face object provides the spatial data for the face so you can, for example, draw bounding rectangles around a face, or, if you use landmarks on the face, you can add features to the face in the correct place, such as giving a person a new hat.
getPosition()- Returns the top left coordinates of the area where a face was detectedgetWidth()- Returns the width of the area where a face was detectedgetHeight()- Returns the height of the area where a face was detectedgetId()- Returns an ID that the system associated with a detected face
Orientation
The Face API is smart enough to detect faces in multiple orientations. As the head is a solid object that is capable of moving and rotating around multiple axes, the view of a face in an image can vary wildly.
Heres an example of a human face, instantly recognizable to a human, despite being oriented in greatly different ways:

The API is capable of detecting this as a face, even in the circumstances where as much as half of the facial data is missing, and the face is oriented at an angle, such as in the corners of the above image.
Here are the method calls available to a face object:
getEulerY()- Returns the rotation of the face around the vertical axis -- i.e. has the neck turned so that the face is looking left or right [The y degree in the above image]getEulerZ()- Returns the rotation of the face around the Z azis -- i.e. has the user tilted their neck to cock the head sideways [The r degree in the above image]
Landmarks
A landmark is a point of interest within a face. The API provides a getLandmarks() method which returns a List, where a Landmark object returns the coordinates of the landmark, where a landmark is one of the following: Bottom of mouth, left cheek, left ear, left ear tip, left eye, left mouth, base of nose, right cheek, right ear, right ear tip, right eye or right mouth.

Activity
In addition to detecting the landmark, the API offers the following function calls to allow you to smartly detect various facial states:
getIsLeftEyeOpenProbability()- Returns a value between 0 and 1, giving probability that the left eye is opengetIsRighteyeOpenProbability()- Same but for right eyegetIsSmilingProbability()- Returns a value between 0 and 1 giving a probability that the face is smiling
Thus, for example, you could write an app that only takes a photo when all of the subjects in the image are smiling.

Learn More
Its easy to build applications that use facial detection using the Face API, and weve provided lots of great resources that will allow you to do so. Check them out here:
Follow the Code Lab
Read the Documentation
Explore the sample
+Android Developers
Available link for download
Monday, December 19, 2016
Improvements to Sign In with Google Play services 8 3
Improvements to Sign In with Google Play services 8 3
Posted by Laurence Moroney, Developer Advocate
With Google Play services 8.3, weve been hard at work to provide a greatly improved sign-in experience for developers that want to build apps that sign their users in with Google. To help you better understand some of these changes, this is the first in a series of blog posts about whats available to you as a developer. In this post, well discuss the changes to the user experience, and how you can use them in your app, as well as updates to the API to make coding Sign-In with Google more straightforward. On Android Marshmallow, this new Sign-In API has removed any requirement for device permissions, so there is no need to request runtime access to the accounts on the device, as was the case with the old API.
User Experience Improvements
Weve gotten lots of feedback from developers about the user experience of using Googles social sign-in button. Many of you noted that it took too many steps and was confusing for users. Typically, the experience is that the user touches a sign in button, and they are asked to choose an account. If that account doesnt have a Google+ profile, they need to create one, and after that they have to give permissions based on the type of information that the app is asking for. Finally, they get to sign in to the app.
With the new API, the default set of permissions that the app requests has been reduced to basic profile information and optionally email address as demonstrated here. This introduces opportunities for much streamlined user experience: the first improvement here is in the presentation of the button itself. We had received feedback that the Google+ branding on the Sign-In button made it feel like the user would need to share Google+ data, which most apps dont use. As such, the SignInButton has been rebranded with the reduced scopes -- it now reads Sign In with Google, and follows the standard Google branding for use with basic profile information.

After this, the user flow is also more straightforward. Instead of subsequent screens where a Google account is picked based on the email addresses registered on the device, followed by a potential Create Google+ Profile dialog, followed by a permissions consent dialog, like this:
![]() | ![]() | ![]() |
The user experience has changed to a single step, where the user chooses their account and gives consent. If they dont have a Google+ profile, they dont need to create one, eliminating that step. Additional consent dialogs come later, and are best requested in context so that the user understand why you might ask for access to their calendar or contact, and they are only prompted at the time that this data is needed.
![]() | ![]() | ![]() |
We hope that a streamlined, one-tap, non-social sign-in option with additional OAuth permissions requested in context will help improve your sign-in rates and make it a breeze to sign-in with Google.
Check out some live apps that use the new API, including Instacart, NPR One, and Bring!
![]() | ![]() |
In the next post well build on this by looking at some of the changes in the API to make coding apps that use Sign-In with Google even easier.

Available link for download
Sunday, December 18, 2016
Android Developer Story Sendy uses Google Play features to build for the next billion users
Android Developer Story Sendy uses Google Play features to build for the next billion users
Posted by Lily Sheringham, Google Play team
Sendy is a door to door on-demand couriering platform founded in Nairobi, Kenya. It connects customers and logistics providers, providing two unique apps, one for the driver and one for the customer. Watch CEO & Co-founder, Meshack Alloys, and Android Developer, Jason Rogena, explain how they use Developer Console features, such as alpha and beta testing, as well as other tips and best practices, to build for the next billion users.
Learn more about building for billions and get more tips to grow your games business by opting-in to the Playbook app beta and download the Playbook app in the Google Play Store.
Available link for download
Thursday, December 8, 2016
Google Play services 8 1 and Android 6 0 Permissions
Google Play services 8 1 and Android 6 0 Permissions
Posted by, Laurence Moroney, Developer Advocate
Along with new platform features, Android 6.0 Marshmallow has a new permissions model that streamlines the app install and auto-update process. Google Play services 8.1 is the first release to support runtime permissions on devices running Android 6.0. and will obtain all the permissions it needs to support its APIs. As a result, your apps wont normally need to request permissions to use them. However, if you update your apps to target API level 23, they will still need to check and request runtime permissions, as necessary.
To update your Google Play services apps to handle the latest permissions model, its good practice to manage the users expectations in setting permissions that the runtime may require. Below are some best practices to help you get started.
Before you begin...
For the purposes of this post, ensure that your API level and Target SDK are set to at least 23. Additionally, ensure that, for backwards compatibility, you are using the V4 support library to verify and request permissions. If you dont have it already, add it to your gradle file:
com.android.support:support-v4:23.0.1
Youll also need to declare Permissions in your AndroidManifest.xml file. Theres no change here. Whatever permissions your app has always needed should be declared in your AndroidManifest.xml file with the uses-permission tag. Heres an example:
<uses-permission android_name="android.permission.ACCESS_FINE_LOCATION"/>
Documentation on maps and location, including a walkthrough on connecting may be found here.
Step 1. Manage Connections to the GoogleApiClient
Make sure that you are handling connection failures onGoogleApiClient correctly, and that you are using the proper resolution process as outlined here. Note that if Google Play services itself is missing permissions, the user flow to fix them will be handled for you automatically if you follow this methodology. Heres an example:
@Override public void onConnectionFailed(ConnectionResult result) { if (mResolvingError) { // Already attempting to resolve an error. return; } else if (result.hasResolution()) { try { mResolvingError = true; result.startResolutionForResult(this, REQUEST_RESOLVE_ERROR); } catch (SendIntentException e) { // There was an error with the resolution intent. Try again. mGoogleApiClient.connect(); } } else { // Show dialog using GooglePlayServicesUtil.getErrorDialog() showErrorDialog(result.getErrorCode()); mResolvingError = true; } } Step 2. Verify Permissions before calling APIs
Its easy to assume that once you can connect, and youve declared the required permissions for APIs that you want to use in your AndroidManifest.xml file, that future calls will be fine. However, it is vital to ensure that you have the required permission before calling an API or connecting to the GoogleApiClient. This can be done using the checkSelfPermission method of ActivityCompat, Fragment or ContextCompat.
If the call returns false, i.e. the permissions arent granted, youll use requestPermissions to request them. The response to this will be returned in a callback which you will see in the next step.
Heres an example:
private static final int REQUEST_CODE_LOCATION = 2; if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED) { // Request missing location permission. ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.ACCESS_FINE_LOCATION}, REQUEST_CODE_LOCATION); } else { // Location permission has been granted, continue as usual. Location myLocation = LocationServices.FusedLocationApi.getLastLocation(mGoogleApiClient); } Step 3. Implement the request permission callback.
In step 2, if the permission wasnt granted by the user, the requestPermissions method was called to ask the user to grant them. The response from the user is captured in the onRequestPermissionsResult callback. You need to implement this, and always check the return values because the request could be denied or cancelled. Note that you might need to request multiple permissions here -- this sample just checks for a single permission -- you may need to check for more.
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { if (requestCode == REQUEST_CODE_LOCATION) { if(grantResults.length == 1 && grantResults[0] == PackageManager.PERMISSION_GRANTED) { // success! Location myLocation = LocationServices.FusedLocationApi.getLastLocation(mGoogleApiClient); } else { // Permission was denied or request was cancelled } } Step 4. Show permission rationale
If the user has previously denied the permission request, your app should display an additional explanation before requesting the permission again. Indeed, if the permissions are non trivial for the core features of the app, and the user is confused as to why they are needed, it would be recommended to guide them.
In this case, before the call to requestPermissions (step 2, above), you should call shouldShowRequestPermissionRationale, and if it returns true, you should create some UI to display additional context for the permission.
As such your code from Step 2 might look like this:
private static final int REQUEST_CODE_LOCATION = 2; if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED) { // Check Permissions Now if (ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.ACCESS_FINE_LOCATION)) { // Display UI and wait for user interaction } else { ActivityCompat.requestPermissions( this, new String[]{Manifest.permission.ACCESS_FINE_LOCATION}, REQUEST_CODE_LOCATION); } } else { // permission has been granted, continue as usual Location myLocation = LocationServices.FusedLocationApi.getLastLocation(mGoogleApiClient); } Note that in this case your user may still deny the permissions, in which case you will need to craft your app so as not to be in a situation where a denied permission affects parts of the app where it shouldnt. Refer to the best practices section on the Android developers site for more details and guidance.
If youve built any applications that use Google Play services, Id recommend that you download the Google Play services 8.1 SDK, and rebuild your applications using it, testing against the most recent versions of Android 6.0, which you can download from the Android Developers site.
Useful resources:
Get started with building for Android 6.0
Android Permissions design guidelines
Google IO 2015 Session on Android M Permissions
Samples for Google Play services 8.1 with coding best practices
Available link for download
Monday, December 5, 2016
Beware of fake Prisma Android apps Heres the legit Google Play link
Beware of fake Prisma Android apps Heres the legit Google Play link
Looking for the Android version of Prisma? Make sure you dont download a fake.
Did you hear? The unique, artistic photo-filtering app Prisma is now available on Android. But in the early days of the apps availability on the Play Store, you might be having a hard time tracking down a legitimate Prisma download.
Thats because, at the time of writing, the apps still relatively new on Google Play, and as such Googles servers are still surfacing an unfortunate number of fake apps in searches for "Prisma."
Fortunately the solution is easy. Simply download Prisma from the link below, which is the legit version from Prisma Labs, Inc. If youre following a link from elsewhere, check for "Prisma Labs, inc." as the publisher, and "contact@prisma-ai.com" as the contact email at the bottom of the page.
See Prisma on Google Play
Stay safe, and happy downloading!
from Android Central - Android Forums, News, Reviews, Help and Android Wallpapers http://ift.tt/2a63k5P
via IFTTT
Available link for download
Android Developer Story Zabob Studio and Buff Studio reach global users with Google Play
Android Developer Story Zabob Studio and Buff Studio reach global users with Google Play
Posted by Lily Sheringham, Google Play team
South Korean Games developers Zabob Studio and Buff Studio are start-ups seeking to become major players in the global mobile games industry.
Zabob Studio was set up by Kwon Dae-hyeon and his wife in 2013. This couple-run business has already published ten games, including hits Zombie Judgement Day and Infinity Dungeon. So far, the company has generated more than KRW ?140M (approximately $125,000 USD) in sales revenue, with about 60 percent of the studios downloads coming from international markets, such as Taiwan and Brazil.
Elsewhere, Buff Studio was founded in 2014 and right from the start, its first game Buff Knight was an instant hit. It was even featured as the Game of the Week on Google Play and was included in 30 Best Games of 2014 lists. A sequel is already in the works showing the potential of the franchise.
In this video, Kwon Dae-hyeon, CEO of Zabob Studio, and Kim Do-Hyeong, CEO of Buff Studio, talk about how Google Play services and the Google Play Developer Console have helped them maintain a competitive edge, market their games efficiently to global users and grow revenue on the platform.
Check Zabob Studio apps and Buff Knight on Google Play!
Were pleased to share that Android Developer Stories will now come with translated subtitles on YouTube in popular languages around the world. Find out how to turn on YouTube captions. To read locally translated blog posts, visit the Google developer blog in Korean.
+Android Developers
Available link for download
Tuesday, November 29, 2016
Find success on Google Play What app developers can learn from games
Find success on Google Play What app developers can learn from games
Posted by Matteo Vallone, Business Development Manager at Google Play
(As a way to reach more app developers and help them grow successful businesses on Google Play, this post was first published on The Next Web Ed.)
There is much common ground between freemium apps and games businesses when it comes to achieving success. Users are, however, more used to paying for games than apps, stemming from the history of traditional gaming consoles. Moreover, mobile games are also able to easily offer virtual goods across a range of price points to suit every pocket. This means that game developers have had plenty of opportunity to learn about how to improve onboarding, conversion, and ultimately the user Lifetime Value (LTV). So what can app developers learn from game developers? Here are some best practice tips and insights from successful game developers that can be applied to many apps, today.
Drive app success the game developer way:
1. Optimize retention before investing in acquisition
Retention is king, and retention drives conversion. For games developers, retention is the key measure of game quality and whether it appeals to players.
Most game developers will soft launch to beta testing communities or test markets. During this phase, the game is tweaked to optimize retention by looking into specific areas, such as tutorial completion, level difficulty and conversion. Developers can then track retention using the Cohorts reports in Google Analytics. Once retention is satisfactory, the developer can go to full launch and start investing in user acquisition.
2. Retain users with step-by-step engagement
The first seven days after install are the most critical for retention: users install several apps to try them, and decide in the first few days which ones they want to keep using. If you can retain for that time span, your app is more likely to become part of the users daily routine.
There are some simple ways to progressively build user engagement. Its important to present a strong story that explains why that app is relevant to the user, while introducing them to key features. Then place features that offer the user value early, so they can be found without much effort.
This is a not a one-size-fit-all. To find the right solution, a developer needs to first make assumptions on what user flows can improve retention and then run A/B tests to validate or correct them. For example, a developer could think that introducing sign-in later in the user flow might improve retention. Also, the developer needs to keep in mind what the key long term engagement metrics are for the individual app (such as photos uploaded or the number of articles read) and measure the impact of the different onboarding flows on those metrics as well.
In general, these principles are good places to start optimizing your onboarding:
- Look for ways to let the users experience the app straight away, rather than taking them through a long, complex setup.
- Present activation moments such as registering an account, uploading a video, or finding friend gradually
- Start by requiring minimal investment by the user, then ask them for more details as they are needed to use the apps features.
- Treat permissions as a service for the user. For example, if you want users to register, show them in advance that, by making their experience more personal, theyll get more value from the app.

Finally, ensure the user can understand the value of your app before you start asking them to pay. Game developers are particularly good at letting their users try most or all product features for free in in a set number of days or sessions.
A great tool to help analyze how users are engaging (or not) with the app is through the Flow Report in Google Analytics. Using this report, a developer can see how users navigate through the app and where they leave to identify potential roadblocks.
3. Target the right offers at the right users
Understanding different groups of users in-app purchase behavior is the key to devising strategies to encourage them to spend.
Start by identifying groups of users by how they spend and much they are likely to spend. It may be by age group, the channel that brought the install, or in-app behaviour. Use the Segment builder in Google Analytics to identify and define these groups of users. Then, tailor in-app purchase offers to match the segments spending behavior. For example, for segments where multiple users tend to spend more in one go, but spend infrequently, offer them in-app features bundled together.
4. Offer in-app purchases when users are most likely to spend
Users are also more likely to spend, if the purchasing experience is frictionless, and even more so when they can see how the expenditure will add value. So:
- Present purchase opportunities to users when theyre most likely to need or want it and explain to the user why its relevant.
- Make purchasing accessible easily from within the app with a minimum number of taps. For example, offer an upgrade button on the footer of relevant screens.

Like all good game developers, they focus on building good experiences that retain and engage users through constant testing and analytics. First impressions are important, so users need to be able to quickly understand the importance of the app and easily navigate through the onboarding experience. And to start generating revenue, it is important to be thoughtful about how to make in-app purchases actionable.
Watch Matteos Playtime 2015 session The rules of games, for apps to hear more in-depth insights which app developers can learn from games with best practices and developer examples:
You can also watch the other sessions from Google Playtime 2015 to learn more about tools and best practices which can help you find success with business on Google Play.
Available link for download
Cómo Intermitente Rom Sony Xperia Play R800i Via Flashtool
Cómo Intermitente Rom Sony Xperia Play R800i Via Flashtool
Completo tutorial para flashear Sony Xperia Play R800i con el software Flashtool, y les dejo los Firmwares originales para todas las regiones del mundo. Sony Xperia Play R800i flashtool puede ser utilizado para instalar ROMs o firmwares en los dispositivos xperia también se puede utilizar para obtener acceso root, flashear recoverys, flashear ROMs modificadas, hacer particiones e instalar kernels. En nuestros tutoriales solemos utilizar este software para realizar muchos procedimientos, como son el flasheo de una ROM, la instalación de un nuevo Recovery etc.
- ARCHIVOS NECESARIOS :
- Controlador USB PC Componion [For Windows] o [For Mac]
- Xperia FlashTool [DESCARGAR]
- Rom, Firmware Sony Xperia Play R800i [DESCARGAR]
- Bateria por lo menos al 50%
- PASOS A SEGUIR :
- Cuando Flashtool haya acabado de descargar la imagen de Android, quedará guardada en C:/Flashtool/Firmwares como un archivo FTF
- Desconectar el cable USB Xperia Play R800i
- Apagar el celular
- Presionar y mantener el botón volver atrás / volumen abajo (en los terminales modernos de Sony el botón de bajar el volumen suele hacer ahora esta función, no obstante es mejor consultar para cada dispositivo la tecla específica)
- Conectar el cable USB al teléfono
- Soltar el botón de volver atrás / volumen abajo cuando la imagen que muestra qué botón pulsar desaparezca, El proceso de flasheo comenzará, y veremos esta pantalla
- Espera entonces a que Flashtool termine con el proceso. Después se te pedirá que vuelvas a encender tu teléfono. Si todo ha ido bien.
ya tendrías tu teléfono con un nuevo firmware actualizado y listo para funcionar Sony Xperia Play R800i. Si te animas a probar Flashtool.
Available link for download








