Cover photo
Android Developers
986,831 followers|153,756,003 views


Android Developers

Shared publicly  - 
Quick Settings Tiles

While quick settings tiles such as WiFi, Bluetooth, and Airplane mode have been around for some time, Android 7.0 adds the ability for any app to provide their own quick settings tile, giving users quick access to the most important and frequent actions from your app.

Watch the video to learn about the lifecycle of your TileService, how to update your tile, and how to handle clicks, then read the blog post for all the details and a full rundown of the quick settings tile API:

#AndroidNougat #BuildBetterApps
Giovan Pangku's profile photoErika Jaramillo's profile photoVijay Singh's profile photo
Add a comment...

Android Developers

Shared publicly  - 
Join us now for a live webinar on driving maximum value for your app from start to finish. You don’t want to miss this!

Watch here: 
William Agans's profile photo
Hello my name is william and I review apps on my youtube topplaya20234 plz check it out
Add a comment...

Android Developers

Shared publicly  - 
IOIO ROVER a RC4WD Robot controlled with two Android devices by Hans Tischer.
It uses the IOIO board and a custom app. You can drive around the robot, see the camera image, and also turn on a laser diode. Source code ( inspired by INEX camera robot ( More information (in german):
Add a comment...

Android Developers

Shared publicly  - 
Scheduling jobs like a pro with JobScheduler

One of the most important things with respect to background work is being as efficient and low impact as possible. JobScheduler works across the system to batch jobs together--meaning reduced battery drain, reduced memory pressure on API 24+ devices, and built-in awareness of Doze and App Standby.

Read the blog post for all the details and code examples:

Puleng Pulz's profile photoFahad G's profile photoIan Lake's profile photo
+Fahad G - it sounds like you'll want a separate Service (say, an IntentService) that keeps its own Wakelock, then sends a broadcast (using LocalBroadcastManager or the event bus of your choice) back to your JobService when the work is completed so it can call jobFinished(). Then you can just unregister the broadcast receiver in your JobService when you get a callback to onStopJob().

Of course, your vacuum job should probably be done as a transaction which could be canceled and rolled back without any negative effects. That's a pretty standard thing for large database modifications.
Add a comment...

Android Developers

Shared publicly  - 
Android Studio 2.2

#AndroidStudio 2.2 is out today in the stable channel, a huge update designed to help you code faster with smart new tooling features built in

This update is packed with over a dozen new features, like a rewritten layout designer with the new constraint layout, support for Android 7.0 Nougat, Espresso test recorder, enhanced Jack compiler / Java 8 language support, expanded C++ support with CMake and NDK-Build, improved Instant Run and much more!

You can check for updates on the Stable channel from the navigation menu (Help → Check for Update [Windows/Linux] , Android Studio → Check for Updates [OS X]). You can also download Android Studio 2.2 at
Mitul Varmora's profile photoChristos Karatziotis's profile photocc Wang's profile photoOlanipekun Adekunle's profile photo
On the first installation of the update 2.2 I got error: Createprocess error=216. Any solution to that...
Add a comment...

Android Developers

Shared publicly  - 
TIME MESH, an Android Experiment by Coding for Love. A physics simulation connected by springs, rendered using OpenGL in Java.
Add a comment...

Android Developers

Shared publicly  - 
ExoPlayer v2 released!
The ExoPlayer library a customizable and extensible alternative to the built-in MediaPlayer APIs that provides a consistent API for streaming audio and video across all API 16+ devices.

ExoPlayer v2 includes significant architectural improvements and new features such as:
- A VideoView equivalent in SimpleExoPlayerView
- Gapless audio playback
- Playlist Support
- MediaSource composition to support side-loading subtitles, looping videos, or concatenating multiple sources
- Improved Audio extension APIs with pre-built extensions for ffmpeg, opus, and flac
- Seeking in live playback for DASH and SmoothStreaming sources
- A greatly simplified demo app

All in addition to ExoPlayer’s existing support for DASH and SmoothStreaming adaptive playback.

If you’re building a new media app, we recommend building on ExoPlayer v2. For those who are using ExoPlayer 1.X, you can include both 1.X and 2.X in your app (due to a different package name), allowing you to test and migrate your users with minimal impact.

Follow the ExoPlayer blog for all of the details:
And start using ExoPlayer:
Today we’ll be making our first release of ExoPlayer 2.x. This is a major iteration of the library. It includes significant API and…
Jishnu Dey's profile photoMiguel Delgado's profile photoDerrick Kang's profile photo
Add a comment...

Android Developers

Shared publicly  - 
New Android Wear Developer Preview 3

Today we are launching the Google Play Store on Android Wear in the third developer preview for Android Wear 2.0. In addition, we are releasing a number of enhancements including updates to the Complications API, launching the new WearableRecyclerView to better take advantage of circular displays when displaying vertical lists, inline actions for notifications, Smart Reply as well as fixes for a number of bugs you helped us identify (theatre mode anyone?). Let us know what you think and please send us your feedbacks!

Read more here:

Ben Ko's profile photoLuca C.'s profile photoPatrick McGonigle's profile photo
Add a comment...

Android Developers

Shared publicly  - 
Learn how to drive maximum value for your app from start to finish with Google and TUNE in a live webinar on September 29th.
Learn how to drive maximum value for your app from start to finish with Google and TUNE in a live webinar on September 29th. You don’t want to miss this!

Register here: 
View original post
Add a comment...

Android Developers

Shared publicly  - 
Android Experiments - Paper Planes by Active Theory

PAPER PLANES, a celebration of International Peace Day. Send and catch paper plans all over the globe in this WebGL world with Nougat features baked in. By Active Theory. #AndroidExperiments
The heart of our concept was to bring people together from all over the world, using the power of the web and Android to create an instant connection to one another. So we made a way for users to create and fold their own paper plane, stamped with their location, and “throw” it into the world where it will be caught by someone who could be on the other side of the Earth. Our world is rendered in WebGL using the three.js library, taking advanta...
Add a comment...

Android Developers

Shared publicly  - 
Virtual Files, Alternative Mime Types, and the Storage Access Framework

New in #AndroidNougat, apps using the Storage Access Framework can now provide virtual files - files without a direct bytestream representation. While you can’t use openInputStream() with these virtual files, you can use Android 7.0’s alternative mime types to potentially transcode the files into alternative file formats or simply use them with an ACTION_VIEW Intent to open them in their native editor.

Check out the documentation on virtual files at and read more about the Storage Access Framework at

Ian Lake's profile photo
Really, really make sure you're either using CATEGORY_OPENABLE or handle virtual files appropriately!
Add a comment...

Android Developers

Shared publicly  - 
Building a DocumentsProvider

Android 4.4 KitKat introduced the Storage Access Framework, a common framework which allows apps use a system provided UI to request files from apps and from local storage. Your app can be an equal partner on that list by implementing a DocumentsProvider, making files your app owns available to other apps, all without needing the Storage permission or requiring you build your own file selection UI.

Watch the video to go through the required APIs needed for building a DocumentsProvider, then read the novel blog post for more details and all of the other functionality that you can add to a DocumentsProvider:

See this video and many others in the full Android Development Patterns playlist:

Nsubuga Hassan's profile photoShanyce Evans's profile photoBuzzy Shaman's profile photoPotentialprince2's profile photo
+Ian Lake
Hey man, i love your videos and energy.
What resource can i use if i want to build more of java for my app versus using xml. I want my users to save as much data as possible. Thanks Ian.
Add a comment...
Android Developers's Collections
A place for Android developers everywhere to meet, share and discuss the latest on Android development
This is the official Google+ home of the Android Engineering teams.

Android is a software stack for mobile devices that includes an operating system, middleware and key applications. 

The Android SDK provides the tools and APIs you need to develop applications on the Android platform.