Android, the worlds most popular mobile operating system just turned 8 years old! 🎉

This amazing platform has come such a long way since 1.0, and to celebrate this milestone I came up with 8 reasons I love developing for the Android platform.

I’m keen to hear yours too!

1. Intents

Android’s Intent system is amazing. It’s a core feature of the OS that was designed extremely well.

Intents allow an app to broadcast its intent to perform an action, and any app to respond.

This opens up so many possibilities for integration between apps, or with the system. Intents are the building blocks allowing system apps to be replaced with 3rd party apps.

Android is well known for its abilities to customised, and we have Intents to thank for that!

2. The Resource system

Android’s resource system is amazing. There have been surprisingly few changes or updates to the way resources work since Android was released. It goes to show the incredible design and forethought that went into the initial design of Android.

Resources are the central way of defining themes, styles, strings, drawables, layouts and more in your application.

The beauty of this system is that it supports configuration qualifiers — the ability to provide a different set of resources for a different configuration.

A configuration can be anything from the devices language, orientation, screen size, API level and more.

Localization is incredibly easy.

Providing different layouts for large screen sizes is a cinch.

Defining multiple themes that change the entire look of your application — built right in!

If you are not using the resource system to its full potential, you should be.

3. Notifications API

The notifications API is amazing. When Android Wear, Android TV, and Android Auto were announced, I expected a whole new set of API’s to enable features such as home screen recommendations for Android TV, cards for Android Wear, Android Auto interactions or Android N’s quick reply. Nope.

The answer? Notifications.

Notifications are used for all of the above. The flexibility of the notifications API is never ending. Coupled with the Intent system they become even more powerful.

You’ll learn to love this API.

4. Google Play Services

Google Play Services is amazing. It’s a bundle of cool, interesting and useful API’s installed as an APK on every (Google certified) device.

The ability to update these API’s outside of Android normal system updates is a huge win for Google and helps to solve some of Androids fragmentation woes.

Updates are released every six weeks so there is always something new to look forward to!

Some of the API’s included in Play Services are:

Fused Location Provider— a more accurate and battery efficient Location API

Nearby API — an API for enabling features based on proximity

Google Maps

And much more!

Be careful though! Adding the entire Google Play Services dependency can quickly put your app over the 64K dex limit. Only compile the modules you need!

And as a bonus, Magnus Hyttsten’s Whats new in Google Play Services videos are hilarious!

5. Android Studio

Android Studio is amazing! Who remembers the eclipse days? I’ve tried to block it out. 😢

Android Studio is the official IDE for Android, based on IntelliJ Community Edition.

This IDE will be your life — learn to use it! There are infinite keyboard shortcuts, refactoring’s, features and integrations that can save you hours of development time.

The pace of development of Android Studio is fast, and alpha and beta builds are available if you are game enough!

Promising features like Instant Run show that Google are committed to developers and making it easier to build great apps.

6. Google Play Store

The Google Play Store and the Developer Console are amazing. I love that I can release a new application to millions of Android devices all over the world within a few hours. The automated review process means much less overhead in the development cycle. Bug fixes and updates can be rolled out extremely quickly.

The Play Store also has a number of other great features:

Store listing experiments — A/B testing for your Play Store listing page

Alpha and beta testing

An API! — automate your Play Store uploads

A native app — manage your apps on the go

The Google Play Store provides a great way to distribute your app. Pay attention to the guidelines, though!

7. The community

The Android community is amazing. Open source fosters open source.

You’d be hard-pressed to find an app that doesn’t use one of Jake Wharton’s or Square’s open source libraries.

It’s commonplace for large companies like Trello and AirBnb to open source the tools they use internally.

Use the community to your advantage! Libraries like OkHttp and Retrofit, Glide and RxJava can get your next app up and running in no time.

Services like Crashlytics and Google Analytics are free, and essential to creating high quality apps.

Don’t reinvent the wheel if you don’t have to!

8. Material Design

Material design is amazing! Seriously!

Material design is perhaps one of the biggest improvements to date since Android 1.0. It’s a new, very well thought out design language based around amazing animations, transitions, and the metaphor of ‘paper’.

The community adoption and support of Material Design has been huge, with sites like Material Up quickly springing up, encouraging developers to push the boundaries of this incredible design language.

Material Design extends far beyond Android too, with Google applying this across their entire product line, the web, and even iOS.

The implementation can be tricky though. Shared Element transitions are fiddly and hard to get right, and some components of Material Design aren’t yet present in the design library, like bottom navigation.

Android is amazing

On top of all of these points, Android has almost 70% market share, is available on thousands of devices, is present on flagships as well entry level devices in emerging markets.

I’m so proud to be an Android Developer, and I love the potential reach I have with this platform. Android apps can run on everything from phones to watches to cars to TV’s. Tell me thats not exciting!

Be together, not the same

That slogan quite aptly sums up Android. An open platform designed for everyone!

Happy 8th Birthday Android!