Your App May Be Getting on the ARC
Ars Technica is reporting that it appears that a recent Chrome OS update has the underpinnings of making the Play Store and its contents available to users.
It was just over a year ago that I blogged about the App Runtime for Chrome, or ARC. This was nascent technology from Google that would allow you to package your app as a Chrome extension and run it on Chrome OS (and, for testing purposes, on Chrome for traditional desktop operating systems). When I spent some more time with it earlier this year, to see what Google may have improved with ARC, my sense was that it was merely an experiment, nothing more.
Ars’ reporting turns that on its head. The language that they and various Redditors uncovered suggests that a substantial chunk of the Play Store catalog will be available to Chrome OS users. There is absolutely no chance that the developers of “over a million apps and games on Google Play” have manually tested their wares on ARC. This would indicate that Google is taking an opt-out approach: your app will be available on Chrome OS unless you do something (in the app or in the Play Developer Console) to block it.
The ARC environment is a strange world for an Android app. Your app runs in an SDK-style emulator, but where the AVD contains no other apps, including few of the standard system apps that you see when you create an AVD through the AVD Manager. Each app is in its own silo, so even if the Chrome OS user has three apps installed, each app is isolated from the others.
Now, the details of how ARC works may shift as part of this rollout, and I think there is a decent chance that we will learn more at Google I|O in a few weeks.
What does this mean for you, as an Android app developer?
Pay close attention to discussion about ARC in and around Google I|O. If it looks like what Ars is describing is coming true, pay very close attention to whether your app will automatically be distributed to Chrome OS devices. If it will be, either nab a Chromebook and test your app, or follow whatever instructions they provide to block your app from Chrome OS until you are in position to do such testing. FWIW, my book has a chapter on ARC and what it means for your app.
Pay further attention to where Android apps can run with ARC. If the answer is “just” Chrome OS, that audience probably is on par, roughly, with the number of people using Android 2.x today. If, on the other hand, Google makes this available to all Chrome users, that would be a massive audience. My guess is that they will do this in two stages, with Chrome OS first, followed by desktop Chrome support in 2017 or beyond, but that is just a guess. You may not care enough about Chrome OS users to spend much time tuning your app for ARC, but you really should care about all Chrome users.
This would seem to be independent of Android N’s multi-window feature. Freeform multi-window seems specifically aimed at an Android-based environment that has several windows. Perhaps I am misinterpreting what we are being told. However, if I am correct, it would seem that Google may be preparing a multi-prong dive into competing with traditional desktop operating systems, with a more desktop-y Android to go along with an expanded Chrome OS.
An opt-out ARC, along with opt-out multiwindow support (to the extent that opting-out even works), suggests that Google is tired of the modest developer adoption of Android TV, Android Wear, and Android Auto. Where they think that they can get away with it, Google may aim to make the Play Store catalog available in toto to new environments, much as they did with tablets back in 2011.
I cannot say that I find Ars’ reporting to be surprising, considering that my book’s chapter on desktop Android suggested that an expanded ARC would be one of Google’s moves. However, this puts added emphasis on paying close attention to what is announced at Google I|O, to any updated developer previews or support libraries released at I|O, and so on.
Interested in learning Kotlin? Check out the Klassbook for Kotlin language lessons that you can run right in your browser!