Skip to content

Software Development Blogs: Programming, Software Testing, Agile Project Management

Methods & Tools

Subscribe to Methods & Tools
if you are not afraid to read more than one page to be a smarter software developer, software tester or project manager!

Android Developers Blog
Syndicate content
An Open Handset Alliance Project.
Updated: 9 hours 8 min ago

Keeping up to Date with the Support Library

Fri, 02/24/2017 - 19:25
Posted by Agustin Fonts, Product Manager, Android Support Library

It's important to keep current when you're dealing with technology. That’s why we're constantly working to improve the quality of our software, particularly libraries that are linked into your apps, such as the Support Library.  The Support Library is a suite of libraries that provides backward compatibility along with additional features across many Android releases.

We have just released version 25.2 of the Support Library.  If you're making use of the android.support.v7.media.MediaRouter class in revision 25.1.1 or 25.1.0, we strongly recommend that you update due to a known issue.  If you haven't updated recently, you've missed out on some great bug fixes such as these:

25.2:
  • Corrected a severe mediarouter issue in which using an A2DP Bluetooth device and media routing APIs could cause the device to become unresponsive, requiring a reboot
  • Showing a slide presentation with screen mirroring no longer causes the device to disconnect from Wi-Fi
  • Media button now properly handles media apps that did not register themselves with setMediaButtonReceiver()
  • TextInputLayout correctly overlays hint and text if text is set by XML (AOSP issue 230171)
  • Corrected a memory leak in MediaControllerCompat (AOSP issue 231441)
  • RecyclerView no longer crashes when recycling view holders (AOSP issue 225762)
Reporting (and fixing) a Bug
The Support Library is developed by the Android Framework and Developer Relations teams, and, just like the Android platform, you can file bugs using the AOSP issue tracker, or submit fixes to our Git repository. Your feedback is critical in helping us to make the Support Library the most productive environment to use for developing Android applications.
Categories: Programming

Publish your app with confidence from the Google Play Developer Console

Wed, 02/22/2017 - 19:20
Posted by Kobi Glick, Product Manager, Google Play

Publishing a new app, or app update, is an important and exciting milestone for every developer. In order to make the process smoother and more trackable, we're announcing the launch of a new way to publish apps on Google Play with some new features. The changes will give you the ability to manage your app releases with more confidence via a new manage releases page in the Google Play Developer Console.




Manage your app updates with clarity and control

The new manage releases page is where you upload alpha, beta, and production releases of your app. From here, you can see important information and the status of all your releases across tracks.

The new manage releases page.
Easier access to existing and new publishing features

Publishing an app or update is a big step, and one that every developer wants to have confidence in taking. To help, we've added two new features.
First, we've added a validation step that highlights potential issues before you publish. The new "review and rollout" page will appear before you confirm the roll out of a new app and flag if there are validation errors or warnings. This new flow will make the app release process easier, especially for apps using multi-APK. It also provides new information; for example, in cases where you added new permissions to your app, the system will highlight it.


Second, it's now simpler to perform and track staged roll-outs during the publishing flow. With staged rollouts, you can release your update to a growing % of users, giving you a chance to catch and address any issues before affecting your whole audience.

If you want to review the history of your releases, it is now possible to track them granularly and download previous APKs.

Finally we've added a new artifacts library under manage releases where you can find all the files that help you manage a release.
Start using the new manage releases page today
You can access the new manage releases page in the Developer Console. Visit the Google Play Developer Help Center for more information. With these changes, we're helping you to publish, track and manage your app with confidence on Google Play.


How useful did you find this blogpost? β˜… β˜… β˜… β˜… β˜…                                                                               
Categories: Programming

Publish your app with confidence from the Google Play Developer Console

Wed, 02/22/2017 - 19:20
Posted by Kobi Glick, Product Manager, Google Play

Publishing a new app, or app update, is an important and exciting milestone for every developer. In order to make the process smoother and more trackable, we're announcing the launch of a new way to publish apps on Google Play with some new features. The changes will give you the ability to manage your app releases with more confidence via a new manage releases page in the Google Play Developer Console.




Manage your app updates with clarity and control

The new manage releases page is where you upload alpha, beta, and production releases of your app. From here, you can see important information and the status of all your releases across tracks.

The new manage releases page.
Easier access to existing and new publishing features

Publishing an app or update is a big step, and one that every developer wants to have confidence in taking. To help, we've added two new features.
First, we've added a validation step that highlights potential issues before you publish. The new "review and rollout" page will appear before you confirm the roll out of a new app and flag if there are validation errors or warnings. This new flow will make the app release process easier, especially for apps using multi-APK. It also provides new information; for example, in cases where you added new permissions to your app, the system will highlight it.


Second, it's now simpler to perform and track staged roll-outs during the publishing flow. With staged rollouts, you can release your update to a growing % of users, giving you a chance to catch and address any issues before affecting your whole audience.

If you want to review the history of your releases, it is now possible to track them granularly and download previous APKs.

Finally we've added a new artifacts library under manage releases where you can find all the files that help you manage a release.
Start using the new manage releases page today
You can access the new manage releases page in the Developer Console. Visit the Google Play Developer Help Center for more information. With these changes, we're helping you to publish, track and manage your app with confidence on Google Play.


How useful did you find this blogpost? β˜… β˜… β˜… β˜… β˜…                                                                               
Categories: Programming

Build flexible layouts with FlexboxLayout

Tue, 02/21/2017 - 19:48
Posted by Takeshi Hagikura, Developer Programs Engineer

At Google I/O last year we announced ConstraintLayout, which enables you to build complex layouts while maintaining a flat view hierarchy. It is also fully supported in Android Studio's Visual Layout Editor.

At the same time, we open sourced FlexboxLayout to bring the same functionalities of the CSS Flexible Layout module to Android. Here are some cases where FlexboxLayout is particularly effective.

FlexboxLayout can be interpreted as an advanced LinearLayout because both layouts align their child views sequentially. The significant difference between LinearLayout and FlexboxLayout is that FlexboxLayout has a feature for wrapping.

That means if you add the flexWrap="wrap" attribute, FlexboxLayout puts a view to a new line if there is not enough space left in the current line as shown in the picture below.


One layout for various screen sizes With that characteristic in mind, let's take a case where you want to put views sequentially but have them move to new lines if the available space changes (due to a device factor, orientation changes or the window resizing in the multi-window mode).


Nexus5X portrait


Nexus5X landscape

Pixel C with multi window mode enabled, divider line on the left.

Pixel C with multi window mode enabled, divider line on the middle.

Pixel C with multi window mode enabled, divider line on the right.
You would need to define multiple DP-bucket layouts (such as layout-600dp, layout-720dp, layout-1020dp) to handle various screen sizes with traditional layouts such as LinearLayout or RelativeLayout. But the dialog above is built with a single FlexboxLayout.

The technique used in the example is setting the flexWrap="wrap" as explained above,

<com .google.android.flexbox.flexboxlayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     app:flexwrap="wrap">
then you can get the following layout where child views are aligned to a new line instead of overflowing its parent.




Another technique I'd like to highlight is setting the layout_flexGrow attribute to an individual child. This helps improve the look of the final layout when free space is left over. The layout_flexGrow attribute works similar to the layout_weight attribute in LinearLayout. That means FlexboxLayout will distribute the remaining space according to the layout_flexGrow value set to each child in the same line.

In the example below, it assumes each child has the layout_flexGrow attribute set to 1, so free space will be evenly distributed to each of them.
 <android .support.design.widget.TextInputLayout
     android:layout_width="100dp"
     android:layout_height="wrap_content" 
     app:layout_flexgrow="1">



You can check out the complete layout xml file in the GitHub repository.
RecyclerView integration  Another advantage of FlexboxLayout is that it can be integrated with RecyclerView. With the latest release of the alpha version the new FlexboxLayoutManager extends RecyclerView.LayoutManager, now you can make use of the Flexbox functionalities in a scrollable container in much more memory-efficient way.

Note that you can still achieve a scrollable Flexbox container with FlexboxLayout wrapped with ScrollView. But, you will be likely to experience jankiness or even an OutOfMemoryError if the number of items contained in the layout is large, as FlexboxLayout doesn't take view recycling into account for the views that go off the screen as the user scrolls.

(If you would like to learn more about the RecyclerView in details, you can check out the videos from the Android UI toolkit team such as 1, 2)

A real world example where the RecyclerView integration is useful is for apps like the Google Photos app or News apps, both expect large number of items while needing to handle various width of items.

One example is found in the demo application in the FlexboxLayout repository. As you can see in the repository, each image shown in RecyclerView has a different width. But by setting the flexWrap setting to wrap,

FlexboxLayoutManager layoutManager = new FlexboxLayoutManager();
layoutManager.setFlexWrap(FlexWrap.WRAP);
and setting the flexGrow (as you can see, you can configure the attributes through FlexboxLayoutManager and FlexboxLayoutManager.LayoutParams for child attributes instead of configuring it from xml) attribute to a positive value for each child,
void bindTo(Drawable drawable) {
  mImageView.setImageDrawable(drawable);
  ViewGroup.LayoutParams lp = mImageView.getLayoutParams();
  if (lp instanceof FlexboxLayoutManager.LayoutParams) {
    FlexboxLayoutManager.LayoutParams flexboxLp = 
        (FlexboxLayoutManager.LayoutParams) mImageView.getLayoutParams();
    flexboxLp.setFlexGrow(1.0f);
  }
}
you can see every image fits within the layout nicely regardless of the screen orientation.



If you would like to see complete FlexboxLayout example, you can check:

What's next? Check out the full documentation for other attributes to build flexible layouts tailored for your needs. We're very open to hear your feedback, if you find any issues or feature requests, please file an issue on the GitHub repository.



Categories: Programming

Tips for building high-quality and accessible financial services apps

Fri, 02/17/2017 - 17:41
Posted by Joel Newman & Ashraf Hassan, Strategic Partnerships, Finance, Google Play

Millions of people around the globe have limited or no access to basic financial services to enable them to manage their day-to-day finances. Mobile technology can help bridge this gap by connecting historically underserved consumers with high-quality tools to help them improve their financial health.

Often faced with an uncertain regulatory environment and/or a highly fragmented financial marketplace, many developers struggle with building great app experiences while also navigating this complex financial space. That's why we recently worked with CFSI, the authority on consumer financial health, to create the FinTech App Development Compass, a six-step guide for building high quality mobile apps to make financial services more accessible on Google Play.

Below, we're sharing six tips to consider when building a financial services app. For more, read the complete FinTech App Development Compass.

Tip 1: Know Your User
Understand who your consumer is and what difference your product can make in their day-to-day life. What are their financial needs? How can your product improve their financial health? How does your product fit within the context of their financial lives?

Tip 2: Focus on Access
Responsibly expand access to your product. Consider how your product can fit seamlessly into your users' routines. Consider your users' circumstances, including that English may not be their first language and that they may be using older devices with limited data plans.

Tip 3: Establish and Maintain Trust
Trust is at a premium in the financial space. Make sure you are developing mutually beneficial financial solutions that deliver clear and consistent value. Similarly, make sure you are using the latest security tools available from the Android platform to secure your users' data.

Tip 4: Test and Iterate
Before releasing any product to the public, make sure it has been thoroughly tested. From a financial perspective, be sure to measure the actual impact of your product on users over time. From a technological perspective, be sure to leverage Google Play alpha and beta channels for distributing apps before their public release.
Tip 5: Drive Positive User Behavior
Drive positive consumer behavior through smart design and communication. Leverage the Android platform tools like Material Design and notifications to steer users toward positive action or take financial action at appropriate times.

Tip 6: Recognize the Value of Mutual Success
Remember that the best business models are win-win: If your users' financial health improves, your company profits. Consider embedding financial impact and technological tracking capabilities within your platform from the beginning.

For additional information, refer to the CFSI Compass Principles 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.

How useful did you find this blogpost? β˜… β˜… β˜… β˜… β˜…                                                                               
Categories: Programming

And the winners of the Google Play Indie Games Contest in Europe are...

Fri, 02/17/2017 - 17:37
Posted by Matteo Vallone, Google Play Games Business Development

Today, at Saatchi Gallery in London, we hosted the final event of the first Google Play Indie Games Contest in Europe. The 20 finalists, selected from nearly 1000 submissions, came from 12 countries to showcase their games to an excited room of gamers, industry experts and press. Selected based on the votes of the attendees and the Google Play team, the Top 10 pitched in front of a jury of industry experts who chose the top winners.



Stay tuned for more pictures and a video of the event.

Without further ado, join us in congratulating the winners!

Winner & Unity prize winner:

Reigns, by Nerial, from the United Kingdom
You are the King. For each decision, you only have two choices. Survive the exercise of power and the craziness of your advisors... as long as you can.
Runners up:

The Battle of Polytopia, by Midjiwan AB, from Sweden
A turn based strategic adventure. It's a game about ruling the world, fighting evil AI tribes, discovering new lands and mastering new technologies. Causality, by Loju, from the United Kingdom
A puzzle about manipulating time, altering the sequence of events and changing the outcome of each level to help a group of astronauts find a route to safety.

The other top games selected by the event attendees and the Google Play team are:

Blind Drive, by Lo-Fi People, from Israel
You're driving blindfolded as a mysterious voice gives you suicidal commands on the phone. Survive on-rushing vehicles using only your hearing to guide you. Gladiabots, by GFX47, from France
A competitive tactical game in which you design the AI of your robot squad. Use your own strategy, refine it online and fight for the top of the leaderboard. Happy Hop: Kawaii Jump, by Platonic Games, from Spain
This isn't just an original one-tap endless hopper, it's also the cutest one. Ever wondered what's in the end of the rainbow? That would be Happy Hop. Lost in Harmony, by Digixart Entertainment, from France
Experience music in a new way with the combination of rhythmic tapping and choreographic runner to go through two memorable journeys with Kaito and M.I.R.A.I. Paper Wings, by Fil Games, from Turkey
A fast-paced arcade game which puts you in control of an origami bird. Avoid the hazards and collect the falling coins to keep your paper bird alive. Pinout, by Mediocre, from Sweden
A breathtaking pinball arcade experience: race against time in a continuous journey through this canyon of pulsating lights and throbbing retro wave beats. Rusty Lake: Roots, by Rusty Lake, from Netherlands
James Vanderboom's life drastically changes when he plants a special seed in the garden. Expand your bloodline by unlocking portraits in the tree of life.


Check out the prizes The prizes of this contest were designed to help the winners showcase their art and grow their business on Android and Google Play, including:
  • YouTube influencer campaigns worth up to 100,000 EUR
  • Premium placements on Google Play
  • Tickets to Google I/O 2017 and other top industry events
  • Promotions on our channels
  • Special prizes for the best Unity game
  • And more!
What’s next? The week is not over just yet for Indie games developers. Tomorrow we are hosting the Indie Games Workshop for all indie games developers from across EMEA in the new Google office in Kings Cross.
It’s been really inspiring to see the enthusiasm around this inaugural edition, and the quality and creativity of the indie games developed across the eligible European countries. We are looking forward to bringing a new edition of the contest to you in late 2017.
How useful did you find this blogpost? β˜… β˜… β˜… β˜… β˜…                                                                               
Categories: Programming

Meet the 20 finalists of the Google Play Indie Games Contest in Europe

Sat, 02/11/2017 - 02:55
Posted by Matteo Vallone, Google Play Games Business Development

Back in November, we launched the Google Play Indie Games Contest for developers from 15 European countries, to celebrate the passion and innovation of the indie community in the region. The contest will reward the winners with exposure to industry experts and players worldwide, as well as other prizes that will showcase their art and help them grow their business on Android and Google Play.

Thank you to the nearly 1000 of you who submitted high quality games in all types of genres! Your creativity, enthusiasm and dedication have once again impressed us and inspired us. We had a very fun time testing and judging the games based on fun, innovation, design excellence and technical and production quality, and it was challenging to select only 20 finalists:

Meet the 20 finalists
(In alphabetical order)

Blind Drive
(coming soon)

Lo-Fi People
Israel Causality
(coming soon)

Loju
United Kingdom
Crap! I'm Broke: Out of Pocket
Arcane Circus Netherlands
Egz

Lonely Woof
France
Ellipsis

Salmi GmbH Germany


Gladiabots


GFX47
France
Happy Hop: Kawaii Jump

Platonic Games
Spain
Hidden Folks (coming soon)

Adriaan de Jongh Netherlands Lichtspeer
(coming soon)

Lichthund
Poland Lost in Harmony
Digixart

Entertainment France


Mr Future Ninja (coming soon)

Huijaus Studios
Finland Paper Wings


Fil Games
Turkey PinOut


Mediocre
Sweden
Power Hover


Oddrok
Finland
Reigns

Nerial
United Kingdom
Rusty Lake: Roots

Rusty Lake Netherlands
Samorost 3

Amanita Design Czech Republic
The Battle of Polytopia
Midjiwan AB Sweden


twofold inc.

Grapefrukt games Sweden
Unworded (coming soon)

Bento Studio France

Check out the prizes

All the 20 finalists are getting:
  • The opportunity to exhibit and showcase their game at the final event held at the Saatchi Gallery in London, on 16th February 2017.
  • Promotion of their game on a London billboard for one month.
  • Two tickets to attend a 2017 Playtime event. This is an invitation-only event for top apps and games developers on Google Play.
  • One Pixel XL smartphone.
At the event at Saatchi, the finalists will also have a chance to make it to the next rounds and win additional prizes, including:
  • YouTube influencer campaigns worth up to 100,000 EUR.
  • Premium placements on Google Play.
  • Tickets to Google I/O 2017 and other top industry events.
  • Promotions on our channels.
  • Special prizes for the best Unity game.
  • And more!

Come support them at the final event

At the final event attendees will have a say on which 10 of these finalists will get to pitch their games to the jury, who will decide on the final contest winners who will receive the top prizes.

Register now to join us in London, meet the developers, check out their great games, vote for your favourites, and have fun with various industry experts and indie developers.



A big thank you again to everyone who entered and congratulations to the finalists. We look forward to seeing you at the Saatchi Gallery in London on 16th February.
Categories: Programming

Android Wear 2.0 is here with new hardware features!

Fri, 02/10/2017 - 01:16

Posted by Hoi Lam, Lead Developer Advocate, Android Wear


Today, we are releasing the final SDK for Android Wear 2.0. In this release, we have added support for the new hardware features announced yesterday. If you have not done so already, it really is time to publish your apps so as to not miss the consumer hardware launch tomorrow.
Throughout the developer preview program, you have given us a lot of constructive feedback as well as bug reports. Thank you again!

Android Wear 2.0 recap

Android Wear 2.0 is our biggest update since we launched Wear in 2014, with numerous platform and developer enhancements. Some of the highlights include:
  • Material Design for Android Wear - A new system user interface and design guidelines, featuring a darker colour palette, vertical layout and visual components such as the WearableRecyclerView and WearableNavigationDrawer. We have also enhanced notifications on the watch with the new MessagingStyle rich notification style and inline actions.
  • Watch Face Complications - Complications are areas of the watch face that display information other than time. Apps can supply data to supported watch faces by creating a ComplicationProviderService, and watch faces can render this data in a style that suits the watch face design.
  • Standalone Android Wear apps and iOS support - Apps can now be downloaded directly to Wear devices via an on-watch Google Play Store. In addition, these apps can access the internet directly without relying on phone apps. This means that apps can now run on Android Wear devices that are paired to iOS devices.
New hardware supportThe first two watches with Android Wear 2.0 give users more ways to interact with their smartwatches. In the final SDK, we have added API support for physical button locations and rotary input. At present, developers will need the new LG Watch Style or LG Watch Sport to test these new functionalities; however, we are working to add these new hardware features to the emulator. Stay tuned for updates! The SDK also includes a few other final bug fixes, such as support for more than three items in the Wearable Action Drawer.
App review changesNow that Android Wear 2.0 is live, we'll soon update the Android Wear App Quality review process with two important changes. First, enhancing your phone app notifications for Android Wear will no longer be sufficient for passing the review. Second, it will soon be required that you upload a watch APK that's compatible with Android Wear 2.0. Only apps that pass these criteria will receive badging in Play Store on the phone and be eligible for top charts for Android Wear apps. These changes will ensure a more consistent experience for users and allow us to streamline the review process for you.
The journey doesn't stop here! The Android Wear 2.0 developer preview lasted longer than we originally planned, but we think that the extra time has paid off in a big way. Thank you once again for your input and patience. You helped us achieve a higher quality bar than we could have achieved on our own.

We have integrated the Android Wear 2.0 Developer Preview documentation into the main Wear developer documentation site and we continue to maintain links to the factory images for the preview devices. For developer related bugs, please continue to file developer bug reports or post comments in our Android Wear Developers community.

From the Android Wear team: Thank you again for your feedback and support!



Categories: Programming

Android Things Developer Preview 2

Thu, 02/09/2017 - 18:01



Posted by Wayne Piekarski, Developer Advocate for IoT

Today we are releasing Developer Preview 2 (DP2) for Android Things, bringing new features and bug fixes to the platform. We are committed to providing regular updates to developers, and aim to have new preview releases approximately every 6-8 weeks. Android Things is a comprehensive solution to building Internet of Things (IoT) products with the power of Android. Now any Android developer can quickly build a smart device using Android APIs and Google services, while staying highly secure with updates direct from Google. It includes familiar tools such as Android Studio, the Android Software Development Kit (SDK), Google Play Services, and Google Cloud Platform. Android Things supports a System-on-Module (SoM) architecture, where a core computing module can be initially used with development boards and then easily scaled to large production runs with custom designs, while continuing to use the same Board Support Package (BSP) from Google.
New features and bug fixes
Thanks to great developer feedback from our Developer Preview 1, we have now added support for USB Audio to the Hardware Abstraction Layer (HAL) for Intel Edison and Raspberry Pi 3. NXP Pico already contains direct support for audio on device. We have also resolved many bugs related to Peripheral I/O (PIO). Other feature requests such as Bluetooth support are known issues, and the team is actively working to fix these. We have added support for the Intel Joule platform, which offers the most computing power in our lineup to date.
Native I/O and user drivers There are many developers who use native C or C++ code to develop IoT software, and Android Things supports the standard Android NDK. We have now released a library to provide native access to the Peripheral API (PIO), so developers can easily use their existing native code. The documentation explains the new API, and the sample provides a demonstration of how to use it.
An important new feature that was made available with Android Things DP1 was support for user drivers. Developers can create a user driver in their APK, and then bind it to the framework. For example, your driver code could read a GPIO pin and trigger a regular Android KeyEvent, or read in an external GPS via a serial port and feed this into the Android location APIs. This allows any application to inject hardware events into the framework, without customizing the Linux kernel or HAL. We maintain a repository of user drivers for a variety of common hardware interfaces such as sensors, buttons, and displays. Developers are also able to create their own drivers and share them with the community.
TensorFlow for Android Things One of the most interesting features of Android Things is the ability to easily deploy machine learning and computer vision. We have created a highly requested sample that shows how to use TensorFlow on Android Things devices. This sample demonstrates accessing the camera, performing object recognition and image classification, and speaking out the results using text-to-speech (TTS). An early-access TensorFlow inference library prebuilt for ARM and x86 is provided for you to easily add TensorFlow to any Android app with just a single line in your build.gradle file.



TensorFlow sample identifying a dog's breed (American Staffordshire terrier)  on a Raspberry Pi 3 with camera
Feedback Thank you to all the developers who submitted feedback for the previous developer preview. Please continue to send us your feedback by filing bug reports and feature requests, and ask any questions on stackoverflow. To download images for Developer Preview 2, visit the Android Things download page, and find the changes in the release notes. You can also join Google's IoT Developers Community on Google+, a great resource to keep up to date and discuss ideas, with over 2900 new members.

Categories: Programming

Get ready for Google Developer Day at GDC 2017

Mon, 02/06/2017 - 18:50
Posted by Noah Falstein, Chief Game Designer at Google

The Game Developers Conference (GDC) kicks off on Monday, February 27th with our annual Google Developer Day. Join us as we demonstrate how new devices, platforms, and tools are helping developers build successful businesses and push the limits of mobile gaming on Android.

Expect exciting announcements, best practices, and tips covering a variety of topics including Google Play, Daydream VR, Firebase, Cloud Platform, machine learning, monetization, and more. In the afternoon, we'll host panels to hear from developers first-hand about their experiences launching mobile games, building thriving communities, and navigating the successes and challenges of being an indie developer.
Visit our site for more info and the Google Developer Day schedule. These events are part of the official Game Developer's Conference, so you will need a pass to attend. For those who can't make it in person, watch the live stream on YouTube starting at 10am PST on Monday, February 27th.


How useful did you find this blogpost? β˜… β˜… β˜… β˜… β˜…                                                                                
Categories: Programming

Fashion gets a digital upgrade with the Google Awareness API

Mon, 02/06/2017 - 17:03
Posted by Jeremy Brook, Group Creative Business Partner, the ZOO

Last summer, we made the Awareness API available to all developers through Google Play services for the first time, providing a powerful and unified sensing platform that enables apps to be aware of all aspects of a user's environment. By using a combination of context signals, such as location, physical activity, weather and nearby beacons, developers can better understand their users individually and provide more engaging and customized mobile app experiences.
We have already seen some great implementations of the API in obvious scenarios, such as shopping for a new home in the neighborhood or recommending a music playlist while starting a jog. For New York Fashion Week, we explored other creative integrations of the Awareness API and collaborated with H&M Group's digital fashion house Ivyrevel and its Fashion Tech Lab to bring couture into the digital age with the 'Data Dress,' a personalized dress designed entirely based on a user's context signals.

Currently under development, the Android app specifically uses the Snapshot API within the platform to passively monitor each user's daily activity and lifestyle with their permission. Where do you regularly eat out for dinner or hang out with friends? Are they more casual or formal meetups? What's the usual weather when you're outside? After the course of a week, the user's context signals are passed through an algorithm that creates a digitally tailored dress design for the user to purchase.

The Android app is launching in closed alpha stage, and is currently being tested by selected global style influencers including Ivyrevel's co-founder Kenza Zouiten. If you want a truly 'tailored' digital experience, sign up here to participate in a future trial of the app before the public release.


Categories: Programming

Get a sneak peek at Android Nougat 7.1.2

Sat, 02/04/2017 - 08:04
Posted by Dave Burke, VP of Engineering

The next maintenance release for Android Nougat -- 7.1.2 -- is just around the corner! To get the recipe just right, starting today, we're rolling out a public beta to eligible devices that are enrolled in the Android Beta Program, including Pixel and Pixel XL, Nexus 5X, Nexus Player, and Pixel C devices. We're also preparing an update for Nexus 6P that we expect to release soon.

Android 7.1.2 is an incremental maintenance release focused on refinements, so it includes a number of bugfixes and optimizations, along with a small number of enhancements for carriers and users.

If you'd like to try the public beta for Android 7.1.2, the easiest way is through the Android Beta Program. If you have an eligible device that's already enrolled, you're all set -- your device will get the public beta update in the next few days and no action is needed on your part. If your device isn't enrolled, it only takes a moment to visit android.com/beta and opt-in your eligible Android phone or tablet -- you'll soon receive the public beta update over-the-air. As always, you can also download and flash this update manually.

We're expecting to launch the final release of the Android 7.1.2 in just a couple of months, Like the beta, it will be available for Pixel, Pixel XL, Nexus 5X, Nexus 6P, Nexus Player, and Pixel C devices. Meanwhile we welcome your feedback or requests in the Android Beta community as we work towards the final over-the-air update. Thanks for being part of the public beta!
Categories: Programming

Introducing Associate Android Developer Certification by Google

Wed, 02/01/2017 - 21:24
Posted by JP Souchak, Program Manager

The Associate Android Developer Certification program was announced at Google I/O 2016, and launched a few months later. Since then, over 322 Android developers spanning 61 countries have proven their competency and earned the title of Google Certified Associate Android Developer.

To establish a professional standard for what it means to be an Associate Android developer in the current job market, Google created this certification, which allows us to recognize developers who have proven themselves to uphold that standard.

We conducted a job task analysis to determine the required competencies and content of the certification exam. Through field research and interviews with experts, we identified the knowledge, work practices, and essential skills expected of an Associate Android developer.

The certification process consists of a performance-based exam and an exit interview. The certification fee includes three exam attempts. The cost for certification is $149 USD, or 6500 INR if you reside in India. After payment, the exam will be available for download, and you have 48 hours to complete and submit it for grading.

In the exam, you will implement missing features and debug an Android app using Android Studio. If you pass, you will undergo an exit interview where, you will answer questions about your exam and demonstrate your knowledge of Associate Android Developer competencies.

Check out this short video for a quick overview of the Associate Android Developer certification process:



Earning your AAD Certification signifies that you possess the skills expected of an Associate Android developer, as determined by Google. You can showcase your credential on your resume and display your digital badge on your social media profiles. As a member of the AAD Alumni Community, you will also have access to program benefits focused on increasing your visibility as a certified developer.

Test your Android development skills and earn the title of Google Certified Associate Android Developer. Visit g.co/devcertification to get started!


Categories: Programming

Engaging users during major events: How The Guardian used innovative notifications

Thu, 01/26/2017 - 19:06
Posted By Tamzin Taylor, Partner Development at Google Play

Major sporting, cultural, political events present an opportunity to re-engage users if you can find a relevant and unique way to serve them information. For example, The Guardian was able to substantially increase user engagement with its mobile app during the recent US election by using new notifications functionality in Android 7.0 Nougat. While notifications themselves are nothing new, The Guardian used innovative techniques and design elements to give their users a rich, real time update on the election results as they happened.
How The Guardian innovated with notifications

Users who opted-in received a single, continuously updating notification which was persistent on their lock screen as results came in on election night. The notification used avatars of the candidates and a progress bar to bring the information to life.




The notification showed the most up-to-date numbers of electoral votes won and states called, an indication of which swing states have been called, and the breakdown of the popular vote between the two leading candidates.

"Having the ability to have a constantly updating notification on screen, allowed us to keep our users engaged throughout election night". – Rob Phillips from The Guardian
Another important feature was the ability to notify users of major updates with a link to detailed information and analysis. In order to do this, the Guardian allowed the newsroom teams to push notifications of major events, such as when the 270 vote mark was passed.

"Our newsroom could let our readers know in real time when there was a serious milestone, and we were able to deliver 101 unique notifications during the course of the evening. The clear menu options acted as key drivers to our journalism as the news unfolded, and meant we could get our readers connected with our content when they were most receptive". – Rob Phillips from The Guardian
Results and next steps
The engagement results were impressive:
  • 170K people signed up to see the alert, with 122K users interacting with the alert
  • The average number of interactions was around 620K, or 5.1 per user
  • 74% of users who saw the notification tapped through to the main live blog
  • 25% of users who saw the notification tapped through to our full results content
Finally, perhaps the most impressive statistic is that promoting live updates (via the notification) resulted in 103% increase in daily installs during election week.

"By providing our users with the ability to quickly and easily check information, to highlight major moments and to direct people to where to find more information, we can deliver value to our readers, helping them make sense of the events wherever they are, quickly and succinctly. After all, that's what we're here to do as a news company, and we're delighted that the new functionality on Nougat lets us do that" – Rob Phillips from The Guardian
On the back of the success of using Android N capabilities for live notifications, the Guardian plans to test the same approach with sports content, and explore how it could be applied more extensively to other major events like The Oscars and the Super Bowl.


How useful did you find this blogpost? β˜… β˜… β˜… β˜… β˜…                                                                               
Categories: Programming

Final Android Wear 2.0 Developer Preview: iOS support. Time to upload your apps to the Play Store!

Thu, 01/26/2017 - 04:24
Posted by Hoi Lam, Developer Advocate 

Cross platform support by Telegram Messenger

Today, we are releasing the fifth and final developer preview for Android Wear 2.0. In this release, we have added iOS support and included a number of bug fixes and enhancements. Apps compiled with this preview are now ready for final submission to the Google Play Store, so it's time to publish your apps. As Android Wear 2.0 approaches its final release in early February, we would like to thank you for your continued feedback during the developer preview program. Your input has helped us uncover bugs as well as drive critical product decisions. Thank you!

iOS Support
Since 2015, you've been able to pair Android Wear watches with iPhones, and now you can distribute your apps to iPhone-paired watches as well. To do so, just set the standalone=true flag in your watch app manifest. This lets the Play Store know that your watch app doesn't require an Android phone app, and therefore can appear in the Play Store on watches paired to iPhones. To pair your watch to an iPhone and test, just follow these steps.

<application …>
   <meta-data android:name="com.google.android.wearable.standalone" android:value="true"/>
    …
</application>

The available network bandwidth for standalone apps can be lower than expected, as the platform balances battery savings vs network bandwidth. Make sure to check out these guidelines for accessing the network, including accessing Wi-Fi and cellular networks on watches paired with iPhones.

Also with this developer preview release, Android Wear apps running on watches paired with iOS devices will be able to perform phone hand-off flows such as OAuth and RemoteIntent for launching a web page on a paired iOS device.

Uploading Your App to the Google Play Store
The final developer preview includes an update to the Wearable Support Library. Apps compiled with API level 25 and this support library are considered ready for deployment in the Google Play Store. Please note that there are no updates to the preview watch image or emulator in this developer preview release.
Other Enhancement and Bug Fixes
  • Navigation Drawer: Flip a flag to toggle to the single-page, icon-only navigation drawer, which provides faster, more streamlined navigation to different views in your app.
  • NFC HCE support: NFC Host Card Emulation FEATURE_NFC_HOST_CARD_EMULATION is now supported.
  • ProGuard and Complication API: New ProGuard configuration means complication data container classes will no longer be obfuscated. This fixes a ClassNotFoundException when watch faces are trying to access data supplied by a complication data provider.

Countdown to Launch
Thank you for the fantastic level of feedback we have gotten from you as developers. Check out g.co/wearpreview for the latest builds and documentation, and be sure to publish your apps before the Android Wear 2.0 consumer launch in early February. As we work towards the consumer launch and beyond, please continue filing bugs or posting comments in our Android Wear Developers community. We can't wait to see your Android Wear 2.0 apps!
Categories: Programming

Discover and celebrate the best local games at Indonesia Games Contest

Wed, 01/25/2017 - 05:00

Posted by David Yin, Business Development Manager, Indonesia, Google Play.

It is a great time to be a mobile game developer on Android with the opportunity reaching more than a billion global users on Google Play. At the same time, developers in fast growing mobile markets like Indonesia have an additional opportunity in the form of a huge local audience that is hungry for local content. We have already seen thousands of Indonesian developers launch high quality, locally relevant games for this new audience, such as "Tahu Bulat" & "Tebak Gambar".

In our continuous quest to discover, nurture growth, and showcase the best games from Indonesia, we are really happy to announce Indonesia Games Contest. This contest celebrates the passion and great potential of local game developers, and provides an opportunity to raise awareness of your game with global and local industry experts, together with gamers, from across Indonesia. It's also a chance to showcase your creativity and win cool prizes.
Entering the contest

The contest is only open to developers based in Indonesia who have published a new game on Google Play after 1 January 2016. Make sure to visit our contest website for the full list of eligibility criteria and terms. A quick summary of the process is below:
  1. If you are eligible, submit your game by 19 March 2017.
  2. Entries will be reviewed by Google Play team and industry experts, and up to 15 finalists will be announced in early April 2017.
  3. The finalists will get to showcase their games at the final event in Jakarta on 26 April 2017.
  4. Winner and runners up will be announced at final event.
To get started

Visit our contest website to find out more about the contest and submit your game.
Terima Kasih!


How useful did you find this blogpost? β˜… β˜… β˜… β˜… β˜…                                                                                 
Categories: Programming

Discover and celebrate the best local games at Indonesia Games Contest

Wed, 01/25/2017 - 05:00

Posted by David Yin, Business Development Manager, Indonesia, Google Play.

It is a great time to be a mobile game developer on Android with the opportunity reaching more than a billion global users on Google Play. At the same time, developers in fast growing mobile markets like Indonesia have an additional opportunity in the form of a huge local audience that is hungry for local content. We have already seen thousands of Indonesian developers launch high quality, locally relevant games for this new audience, such as "Tahu Bulat" & "Tebak Gambar".

In our continuous quest to discover, nurture growth, and showcase the best games from Indonesia, we are really happy to announce Indonesia Games Contest. This contest celebrates the passion and great potential of local game developers, and provides an opportunity to raise awareness of your game with global and local industry experts, together with gamers, from across Indonesia. It's also a chance to showcase your creativity and win cool prizes.
Entering the contest

The contest is only open to developers based in Indonesia who have published a new game on Google Play after 1 January 2016. Make sure to visit our contest website for the full list of eligibility criteria and terms. A quick summary of the process is below:
  1. If you are eligible, submit your game by 19 March 2017.
  2. Entries will be reviewed by Google Play team and industry experts, and up to 15 finalists will be announced in early April 2017.
  3. The finalists will get to showcase their games at the final event in Jakarta on 26 April 2017.
  4. Winner and runners up will be announced at final event.
To get started

Visit our contest website to find out more about the contest and submit your game.
Terima Kasih!


How useful did you find this blogpost? β˜… β˜… β˜… β˜… β˜…                                                                                 
Categories: Programming

Android Instant Apps starts initial live testing

Mon, 01/23/2017 - 19:48
Posted by Aurash Mahbod, Software Engineer, Google Play

Android Instant Apps was previewed at Google I/O last year as a new way to run Android apps without requiring installation. Instant Apps is an important part of our effort to help users discover and run apps with minimal friction.

We’ve been working with a small number of developers to refine the user and developer experiences. Today, a few of these Instant Apps will be available to Android users for the first time in a limited test, including apps from BuzzFeed, Wish, Periscope, and Viki. By collecting user feedback and iterating on the product, we’ll be able to expand the experience to more apps and more users.
To develop an instant app, you’ll need to update your existing Android app to take advantage of Instant Apps functionality and then modularize your app so part of it can be downloaded and run on-the-fly. You’ll use the same Android APIs and Android Studio project. Today, you can also take some important steps to be ready for Instant Apps development. The full SDK will be available in the coming months.

There has already been a tremendous amount of interest in Instant Apps from thousands of developers. We can’t wait to hear your feedback and share more awesome experiences later this year. Stay tuned!

Categories: Programming

Southeast Asian indie game developers find success on Google Play

Fri, 01/20/2017 - 18:46
Posted by Vineet Tanwar, Business Development Manager, Google Play

Indie game developers bring high quality, artistic, and innovative content to Google Play and raise the bar for all developers in the process. In fact, they also make up a large portion of our 'Editor's Choice' recommended titles.
Southeast Asia, in particular, has a vibrant indie game developer ecosystem, and we've been working closely with them to provide tools that help them build successful businesses on Google Play. Today, we're sharing stories from three Indie developers based in Singapore, Vietnam, and Indonesia, who joined us at our 'Indie Game Developers Day' workshops in May 2016 and all of whom have experienced significant growth since.

Inzen Studio from Singapore learned how to use store listing experiments and has improved the conversion rate of their newly launched game Dark Dot by 25%. Indonesia based studio, Niji Games, creator of Cute Munchies, implemented 'Saved Games' and 'Events and Quests' from Google Play games services to significantly improve user retention, and also earned an 'Editor's Choice' badge in the process. Ho Chi Minh City based developer, VGames, optimized monetization and introduced new paid products for their game Gungun online, and grew revenue by over 100%.


Indie game developers who are interested in meeting members of Google Play and who would like to work closer with us are invited to join our next round of SEA workshops in March 2017. To apply for these events, just fill in this form and we will reach out to you.


How useful did you find this blogpost?

β˜… β˜… β˜… β˜… β˜…    
Categories: Programming

App Security Improvements: Looking back at 2016

Thu, 01/19/2017 - 23:46
Posted by Rahul Mishra, Android Security Program Manager
In April 2016, the Android Security team described how the Google Play App Security Improvement (ASI) program has helped developers fix security issues in 100,000 applications. Since then, we have detected and notified developers of 11 new security issues and provided developers with resources and guidance to update their apps. Because of this, over 90,000 developers have updated over 275,000 apps!
ASI now notifies developers of 26 potential security issues. To make this process more transparent, we introduced a new page where developers can find information about all these security issues in one place. This page includes links to help center articles containing instructions and additional support contacts. Developers can use this page as a resource to learn about new issues and keep track of all past issues.

Make sure to check out our new Security for Android Developers page, which highlights the latest security posts, security best practices documents and security checklist. These resources are all aimed at improving your understanding of general security concepts and giving you examples that can help you address app-specific issues.

How you can help:
For feedback or questions, please reach out to us through the Google PlayDeveloper Help Center.
To report potential security issues in apps, email us at security+asi@android.com.
Categories: Programming