Issue #216

July 31st, 2016

Articles & Tutorials

link image   Best Practices for Android Developer Productivity (

Sergii Zhuk shares some of the best practices for Android developer productivity that he uses with his team.

Is your app Aware? - Part 2 (

Roberto Orgiu continues this series by looking at the polling based Snapshot version of the new Awareness APIs.

ConstraintLayout, Inside and Out: Part 2 (

Dave Smith dives deeper into the mechanics of the flexible new ConstraintLayout, starting with how the code is organized internally.

Howdy RxJava (

Sameer Dhakal shares another in-depth introduction to RxJava.

Android From Scratch: Background Operations (

In order to avoid ANRs, you must move longer running operations, such as network requests or slow database queries, to a different thread so as to not prevent the user from continuing to use your app. Paul Trebilcox-Ruiz shows you how.

Kotlin & Dagger 2 (Dependency Injection) -  Part 10 (

In this final article of the series, Juan Saravia talks a little bit about Dagger 2 in Kotlin and the required steps to have it working in the Keddit sample app.

Android Data Binding: The Big Event (

Android Data Binding provides three mechanisms to set an event listener in the layout file and you can choose whichever is most convenient for you.

Be Careful Where You Use Custom Parcelables (

Custom Parcelable classes — ones unique to your app, not a part of the Android framework — have had intermittent problems over the years when used as Intent extras.

Show us your Gradle tasks (

Here's a set of useful Gradle tasks for Android development.

AnimatedVectorDrawable Bundles (

Mark Allison shows a different way of packaging AnimatedVectorDrawable at the source level. In this article he takes a look at AnimatedVectorDrawable Bundles.

Introduction to Android Testing - Part 3 (

In this 3rd post, Rebecca Franks looks at getting a list of users from the Github API and writing unit tests for it.



link image   Hired, The End of Job Searching As You Know It (

Hired brings job offers to you, so you can stop wasting your time applying. Apply to 4,000+ companies at once on Hired.



link image   Mobile DropDowns Revisited (

To better understand how dropdown menus and their alternatives influence the time users take, Klaus Schaefers conducted some UX experiments.



Senior Mobile Developer - Android ( Raritan, New Jersey, United States, 08869 )

Johnson & Johnson is currently recruiting for a Senior Mobile Developer- Android to be part of a fast-paced, innovative, and highly visible teams building web and mobile software for our commercial and R&D lines of business.

Android Engineer (San Francisco, CA)

Yelp connects consumers with great local businesses. We’re looking for Android developers who love creating delightful, compelling experiences for millions of people and thrive in taking ownership of the product they work on. We're building new products and investing in our Android infrastructure.

Android Developer at Citymapper (London, UK)

At Citymapper we’re reinventing how we navigate our cities. We’re a funded London startup with an app that has been Editor’s Choice and featured at Google I/O. But we’re not done yet. We’re looking for ambitious Android developers who are passionate about UI and interested in solving hard problems.

Software Engineer – Android (Düsseldorf)

Join our Mobile Software Engineering Team (Rheinfabrik) in Düsseldorf, Germany.

Passions Hacked -'s open hackathon (Amsterdam)

Mobile mercenaries, are you up for the challenge? We’re calling on you to follow your passion and find innovative ways to build a solid mobile experience and open up the world for all the world’s most daring adventurers. Enroll for online competition, get selected and come to Amsterdam!


Libraries & Code

link image   SlyceMessaging (

A customizable messaging library for Android.

findbugs-android (

A Gradle plugin that creates FindBugs tasks for each variant of android application or library project

overpasser (

Fluid Java interface to OpenStreetMap data through querying the Overpass API. No more query string forging by hand!

ReactiveCache (

The act of caching data with ReactiveCache is just another transformation in the Observable chain. ReactiveCache's API exposes both Transformer and Observable RxJava types to gracefully merge the caching actions with the data stream.

auto-value-map (

AutoValue Extension to add Map generation support. Generates a Map where the keys are the field names and the values the related field values


Videos & Podcasts

link image   Data Saver (

With a new API added to ConnectivityManager, you can check the current state of Data Saver and adjust your apps’ data usage.

Half Way to clean architecture (

The story Dmytro Voronkevych tells is about an Android application with over 100 million installs, used by millions of people everyday and is very profitable. The journey started with legacy code, then grew and transitioned into clean architecture.

Reverse Engineering is not just for hackers (

This talk by Jon Reeve presents simple real-world examples for maximum practical benefit using some of the ever improving set of reverse engineering tools for Android.