The Busy Coder's Guide to Android Development Version 5.7 Released

Subscribers now have access to the latest release of The Busy Coder’s Guide to Android Development, known as Version 5.7, in all formats. Just log into your Warescription page and download away, or set up an account and subscribe!

This update:

  • Adds a dedicated chapter on MediaRouter, including a bit of material out of the chapter on external displays, plus coverage of MediaRouteActionProvider. This includes covering my CWAC-MediaRouter project, a port of MediaRouteActionProvider (and related classes) that allow it to work with the native API Level 11 version of the action bar, instead of requiring you to use ActionBarActivity and, in turn, the fragments backport. This chapter also covers the use of RemotePlaybackClient for playing back media on routes where the playback happens on a remote device… like a Chromecast.

  • Adds a partial chapter on Chromecast and Google Cast. I wound up beating my head against a wall a fair bit with the RemotePlaybackClient stuff. I wanted to cover the open source library first (contrasted with the Cast SDK, which is proprietary), but RemotePlaybackClient has issues. I am aiming to get to the Cast SDK in the next update.

  • Adds a small chapter on how to reduce your application size, if you are concerned that your APK is too portly.

  • Includes some new recommendations in the Miscelleanous Security chapter, such as avoiding accidental APIs, sanitizing your inputs, and so on.

  • Tweaks some of the tutorials to deal with version 22.6.x of the Android SDK Tools and the ADT plugin for Eclipse. In particular, I have officially given up on starting the tutorial from the new-project wizard, so while Tutorial #2 still includes those steps, they are optional. The real starting point is importing a blank Android project that I am publishing, one that avoids all the cruft (and resulting build errors) in what the Eclipse templates presently generate.

  • Revises coverage of streaming content providers for enhanced compatibility with client apps (e.g., handles the “why doesn’t QuickOffice open my PDF?” issue).

  • Updates the Gradle for Android coverage to 0.9.0.

  • Updates OkHTTP to 1.52 and Retrofit to 1.5.0.

  • Moves the SSL coverage into a dedicated chapter, to set things up for expanded coverage, including code samples, in future versions of the book.

  • Your typical smattering of errata fixes and other minor improvements.

As usually, the table of contents will have changed sections shown in bold-italic format, and changebars will indicate specific paragraphs that have changed.

Note that I did remove the SQLCipher for Android tutorial. I discontinued the CWAC-LoaderEx project, as I was not maintaining it, the implementations sucked, and I have largely sworn off the Loader framework as being a failed abstraction. The SQLCipher for Android chapter is still there, but the tutorial was based on SQLCipherCursorLoader, so I removed it. If you are still using that chapter, be sure to hold onto your previous version of the book in addition to obtaining a new one.

The next update is tentatively scheduled for late April.