28 Aug 2015

feedAndroid Community

Vine incorporates more music elements for posts in latest update

There have been several Vine superstars that have gone on to make music records. Some musicians have used the video sharing app to get more followers and sell records as … Continue reading

28 Aug 2015 10:00pm GMT

feedAndroid News, Rumours, and Updates

Motorola silently stops selling the Moto 360, possibly hinting a successor is coming soon

Looking to purchase the Moto 360 from Motorola's site? You'll have to look elsewhere since Motorola has silently halted sales of its smartwatch. The product page for the Moto 360 on the company's site is no longer redirects to Moto Maker for online ordering. Instead, clicking "Build yours" button leads to the Motorola Support page. […]


Come comment on this article: Motorola silently stops selling the Moto 360, possibly hinting a successor is coming soon

Visit TalkAndroid for Android news, Android guides, and much more!

28 Aug 2015 9:54pm GMT

feedAndroid Community

Withings now integrated with Sony Lifelog lifestyle tracking app

No one fitness wearable or app can live alone. More often than not, these various apps, programs, and even devices will have to work together in order to give the … Continue reading

28 Aug 2015 9:20pm GMT

Lenovo Vibe P1 caught in the wild ahead of IFA 2015

The Lenovo Vibe P1 is one of those few smartphones that we really want to check out and review because of its huge 5000mAh battery. How long will the phone … Continue reading

28 Aug 2015 8:40pm GMT

feedAndroid News, Rumours, and Updates

Amid widespread diversity complaints in the tech sector, Twitter claims it will do better in 2016

A huge topic in the tech world the past few years is the staggeringly low percentages of women and minorities employed in these sectors. A few companies have committed themselves to addressing this issue and, now, Twitter joins them. In a blog post today, Twitter Vice President of Diversity and Inclusion Janet Van Huysse, wrote […]


Come comment on this article: Amid widespread diversity complaints in the tech sector, Twitter claims it will do better in 2016

Visit TalkAndroid for Android news, Android guides, and much more!

28 Aug 2015 7:25pm GMT

Google AdWords to begin disabling Flash advertisements in Chrome

On September 1st, you will no longer see advertisements utilizing Flash. This doesn't mean that you won't see video-like advertisements anymore, just they will all be HTML5. Google's AdWords division states that this change will speed up browser performance and bring all advertisers in line with the new HTML5 standard. There is already a setting in Chrome […]


Come comment on this article: Google AdWords to begin disabling Flash advertisements in Chrome

Visit TalkAndroid for Android news, Android guides, and much more!

28 Aug 2015 7:10pm GMT

27 Aug 2015

feedAndroid Developers Blog

Announcing the Android Auto Desktop Head Unit

Posted by Josh Gordon, Developer Advocate

Today we're releasing the Desktop Head Unit (DHU), a new testing tool for Android Auto developers. The DHU enables your workstation to act as an Android Auto head unit that emulates the in-car experience for testing purposes. Once you've installed the DHU, you can test your Android Auto apps by connecting your phone and workstation via USB. Your phone will behave as if it's connected to a car. Your app is displayed on the workstation, the same as it's displayed on a car.

The DHU runs on your workstation. Your phone runs the Android Auto companion app.


Now you can test pre-released versions of your app in a production-like environment, without having to work from your car. With the release of the DHU, the previous simulators are deprecated, but will be supported for a short period prior to being officially removed.

Getting started

You'll need an Android phone running Lollipop or higher, with the Android Auto companion app installed. Compile your Auto app and install it on your phone.

Install the DHU

Install the DHU on your workstation by opening the SDK Manager and downloading it from Extras > Android Auto Desktop Head Unit emulator. The DHU will be installed in the <sdk>/extras/google/auto/ directory.

Running the DHU

Be sure your phone and workstation are connected via USB.

  1. Enable Android Auto developer mode by starting the Android Auto companion app and tapping on the header image 10 times. This is a one-time step.
  2. Start the head unit server in the companion app by clicking on the context menu, and selecting "Start head unit server". This option only appears after developer mode is enabled. A notification appears to show the server is running.
    Start the head unit server in the Android Auto companion app before starting the DHU on your workstation. You'll see a notification when the head unit server is running.

  3. On your workstation, set up port forwarding using ADB to allow the DHU to connect to the head unit server running on your phone. Open a terminal and type adb forward tcp:5277 tcp:5277. Don't forget this step!
  4. Start the DHU.
    cd <sdk>/extras/google/auto/
    On Linux or OSX: ./desktop-head-unit
    On Windows, desktop-head-unit.exe

At this point the DHU will launch on your workstation, and your phone will enter Android Auto mode. Check out the developer guide for more info. We hope you enjoy using the DHU!

Join the discussion on

+Android Developers

27 Aug 2015 5:36pm GMT

Building better apps with Runtime Permissions

Posted by Ian Lake, Developer Advocate

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

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

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

Ask up front for permissions that are obvious

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

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

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

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

Join the discussion on

+Android Developers

27 Aug 2015 4:51pm GMT

24 Aug 2015

feedAndroid Developers Blog

Get the Do’s and Don’ts for Notifications from Game Developer Seriously

Posted by Lily Sheringham, Developer Marketing at Google Play

Editor's note: We've been talking to developers to find out how they've been achieving success on Google Play. We recently spoke to Reko Ukko at Finnish mobile game developer, Seriously, to find out how to successfully use Notifications.

Notifications on Android let you send timely, relevant, and actionable information to your users' devices. When used correctly, notifications can increase the value of your app or game and drive ongoing engagement.

Seriously is a Finnish mobile game developer focused on creating entertaining games with quality user experiences. They use push notifications to drive engagement with their players, such as helping players progress to the next level when they've left the app after getting stuck.

Reko Ukko, VP of Game Design at Seriously, shared his tips with us on how to use notifications to increase the value of your game and drive ongoing engagement.

Do's and don'ts for successful game notifications

Do's

Don'ts

Do let the user get familiar with your service and its benefits before asking for permission to send notifications.

Don't treat your users as if they're all the same - identify and group them so you can push notifications that are relevant to their actions within your app.

Do include actionable context. If it looks like a player is stuck on a level, send them a tip to encourage action.

Don't spam push notifications or interrupt game play. Get an understanding of the right frequency for your audience to fit the game.

Do consider re-activation. If the player thoroughly completes a game loop and could be interested in playing again, think about using a notification. Look at timing this shortly after the player exits the game.

Don't just target players at all hours of the day. Choose moments when players typically play games - early morning commutes, lunch breaks, the end of the work day, and in the evening before sleeping. Take time zones into account.

Do deep link from the notification to where the user expects to go to based on the message. For example. if the notification is about "do action X in the game now to win", link to where that action can take place.

Don't forget to expire the notifications if they're time-limited or associated with an event. You can also recycle the same notification ID to avoid stacking notifications for the user.

Do try to make an emotional connection with the player by reflecting the style, characters, and atmosphere of your game in the notification. If the player is emotionally connected to your game, they'll appreciate your notifications and be more likely to engage.

Don't leave notifications up to guess work. Experiment with A/B testing and iterate to compare how different notifications affect engagement and user behavior in your app. Go beyond measuring app opening metrics - identify and respond to user behavior.

Experiment with notifications yourself to understand what's best for your players and your game. You can power your own notifications with Google Cloud Messaging, which is free, cross platform, reliable, and thoughtful about battery usage. Find out more about developing Notifications on Android.

Join the discussion on

+Android Developers

24 Aug 2015 4:41pm GMT