The CommonsBlog - RSS Feed

Latest articles

Navigating in Compose: Criteria

Navigating between screens is a common act in an Android app… though, as Zach Klippenstein noted, “screen” is a somewhat amorphous term. Naturally, we want to be able to navigate to different “screens” when those screens are implemented as composables. How we do this is a highly contentious topic. Roughly speaking, there seems to be four major...

Compose for Wear: CurvedRow() and CurvedText()

Compose UI is not just for phones, tablets, foldables, notebooks, and desktops. Compose UI is for watches as well, via the Compose for Wear set of libraries. (Google calls it “Wear Compose” on that page, but that just makes me think “Wear Compose? There! There Compose!”). (and, yes, I’m old) Compose for Wear has a bunch of composables designed...

Tiramusu Thoughts

Leaks about what will be coming up Android 13 / Android T / Tiramusu are making the rounds, in places like XDA Developers and Android Police. Some of what is discussed will have little impact on developers. Other things will be your typical “double-edged sword” of opportunity and pain. So, let’s slice some tiramisu with a sword. Notification...

Final Books, Free for Everyone

As I announced three months ago, the Warescription program has ended. The CommonsWare site now has the full catalog of books available for download. The books are published under the the Creative Commons Attribution-ShareAlike 4.0 International license. PDFs, EPUBs, and MOBI/Kindle editions are available for all of the books, and many of the newer...

“Elements of Android Room” Version 0.9 Released

Subscribers now have access to Version 0.9 of Elements of Android Room, in PDF, EPUB, and MOBI/Kindle formats. Just log into your Warescription page to download it, or set up an account and subscribe! This update adds two more chapters, covering: Using Room across processes Adding triggers to Room databases ...

About the Environment Undeprecations

A week and a half ago, in my random musings on Android 12L, I wrote: getExternalStorageDirectory() and getExternalStoragePublicDirectory() on Environment are now undeprecated. DATA in MediaStore.MediaColumns is also undeprecated. I don’t know what to make of this. A Google engineer reached out to clarify what is going on. Good...

Android 12 Wallpaper Changes Recreate Your Activities

Following up on my previous post, and thanks to a crucial tip from cketti, it now appears that we know more about what is going on with wallpaper changes on Android 12: your activities will get recreated, akin to a normal configuration change, but without an opt-out mechanism. The Original Change cketti pointed me to this AOSP commit. It...

Wallpaper Changes = Configuration Changes?

UPDATE 2021-10-31: See the next post for the resolution to what is going on here. This Stack Overflow question pointed out an interesting problem with the shipping Android 12 release: changing wallpaper results in an effect that feels a lot like a configuration change. Specifically: Start an app Use system HOME navigation...

Random Musings on the Android 12L Developer Preview

Each time Google releases a new developer preview, I rummage through the API differences report the high-level overviews, and even the release blog post, to see if there are things that warrant more attention from developers. I try to emphasize mainstream features that any developer might reasonably use, along with things that may not get quite...

“Elements of Android Jetpack” Version 2.2 Released

Subscribers now have access to an update to Elements of Android Jetpack, known as Version 2.2, in PDF, EPUB, and MOBI/Kindle formats, in addition to the online reader. Just log into your Warescription page and download away, or set up an account and subscribe! This is a minor update, primarily to support Android Studio 2020.3.1 Arctic Fox....

Discover, share and read the best on the web

Follow RSS Feeds, Blogs, Podcasts, Twitter searches, Facebook pages, even Email Newsletters! Get unfiltered news feeds or filter them to your liking.

Get Inoreader
Inoreader - Follow RSS Feeds, Blogs, Podcasts, Twitter searches, Facebook pages, even Email Newsletters!