Correctness of code in the Android platform is a top priority for the security, stability, and quality of each Android release. Memory safety bugs in C and C++ continue to be the most-difficult-to-address source of incorrectness. We invest a great deal of effort and resources into detecting, fixing, and mitigating this class of bugs, and these efforts are effective in preventing a large number of bugs from making it into Android releases. Yet in spite of these efforts, memory safety bugs continue to be a top contributor of stability issues, and consistently represent ~70% of Android’s high severity security vulnerabilities. In addition to ongoing and upcoming efforts to improve detection of memory bugs, we are ramping up efforts to prevent them in the first place. Memory-safe languages are the most cost-effective means for preventing memory bugs. In addition to memory-safe languages like Kotlin and Java, we’re excited to announce that the Android Open Source Project (AOSP) now supports the Rust programming language for developing the OS itself. Rust is popping up everywhere.
Great news from the Supreme Court of the United States. In a ruling on Monday, the Supreme Court found that Google could legally use elements of Oracle’s Java application programming interface (API) code when building Android. “Google’s copying of the API to reimplement a user interface, taking only what was needed to allow users to put their accrued talents to work in a new and transformative program, constituted a fair use of that material,” the Supreme Court ruled in a 6-2 opinion, with one justice (Amy Coney Barrett) not taking part in the ruling. It overturned an earlier federal decision, which found that Google’s use of the API had constituted infringement. Not only is Google’s specific use case declared fair use, but any and all similar cases are fair use as well, as a matter of law, the Supreme Court ruled. We reach the conclusion that in this case, where Google reimplemented a user interface, taking only what was needed to allow users to put their accrued talents to work in a new and transformative program, Google’s copying of the Sun Java API was a fair use of that material as a matter of law. Not only is this the only possible correct and proper ruling, it also means Oracle and Larry Ellison fall flat on their face which is always a joyous occasion as far as I’m concerned. And so ends the saga that, according to my pet conspiracy theory, was set up as one-two punch between Steve Jobs and Larry Ellison, who were incredibly close friends. Apple’s patent assault on Android vendors and Oracle’s attack on Google’s Android API usage happened at the same time, right after Jobs proclaimed he would go “thermonuclear war” on Android. Now, you can argue that these two simultaneous assaults were entirely coincidental, and that these two close friends did not coordinate their attacks in any way. I, on the other hand, remain convinced this was a premeditated, coordinated assault on Android – entirely befitting the two, by all accounts, unpleasant people Jobs and Ellison are.
Google is making some new changes to the Developer Program Policy that will make it harder for apps to see what other apps are installed on your Android device. Google says it regards the full list of installed apps on a user’s device to be personal and sensitive information, and as such, will limit which apps can access this information. Specifically, Google will be restricting which apps can request the QUERY_ALL_PACKAGES permission which is currently required for apps targeting API level 30 (Android 11) and above that want to query the list of installed apps on a user’s device that runs Android 11 or later. These moves by Google to make Android’s permission system less permissive is a welcome one. These changes don’t really restrict users in what kinds of access and permissions they can give applications if they choose to do so, but the default access levels applications get are getting more restrictive, which I think is a good thing. As long as we can keep making different choices and grant the access we choose, all is well.
Fairphone—the sustainable, modular smartphone company—is still shipping updates to the 5-year-old Fairphone 2. The company won’t win any awards for speed, but the phone—which launched in 2015 with Android 5—is now being updated to Android 9.0. The most interesting part of this news is a video from Fairphone detailing the update process the company went through, which offers more transparency than we normally get from a smartphone manufacturer. To hear Fairphone tell the story of Android updates, the biggest barrier to longer-term support is—surprise!—Qualcomm. I thought this was common knowledge in our little corner of the world. Qualcomm has almost a monopoly on the mid-to-high-end smartphone world when it comes to SoCs, and they have a long history of cutting off support for chipsets well before those chipsets become unusable.
Today, Google is releasing its second developer preview of the next version of Android, Android 12. Note that this isn’t considered a beta just yet; that should be coming in May. For now, all of this is focused on developers. There are a bunch of new features though; for example, there are going to be better controls for lockscreen notification security. Developers can set notifications to require authentication before seeing them, or before taking action on them. Developers are also getting more control over app overlays, which let you show content on top of the active app. Not a lot of major new features just yet – those will be unveiled later.
Starting on July 1, 2021 we are reducing the service fee Google Play receives when a developer sells digital goods or services to 15% for the first $1M (USD) of revenue every developer earns each year. With this change, 99% of developers globally that sell digital goods and services with Play will see a 50% reduction in fees. These are funds that can help developers scale up at a critical phase of their growth by hiring more engineers, adding to their marketing staff, increasing server capacity, and more. While these investments are most critical when developers are in the earlier stages of growth, scaling an app doesn’t stop once a partner has reached $1M in revenue — we’ve heard from our partners making $2M, $5M and even $10M a year that their services are still on a path to self-sustaining orbit. This is why we are making this reduced fee on the first $1M of total revenue earned each year available to every Play developer, regardless of size. We believe this is a fair approach that aligns with Google’s broader mission to help all developers succeed. We look forward to sharing full details in the coming months. Hopefully this will help small developers.
This article takes a look at what’s changed in the Android ecosystem for audio developers recently, the audio latency of popular Android devices, and discusses Android’s suitability for real-time audio apps. An infamous weak point for Android.
The first Android 12 developer preview hit the streets Thursday, and we’ve played with it for a day. There’s not a lot to see in this release—at least not at first. Most of the interesting bits are hidden, and the developer community is slowly enabling them. Many changes are half-finished alpha tweaks that will look different in the final release; after all, Google says these releases are for “testing and feedback.” This first release of Android 12 is meant to get some APIs and other changes in front of people for feedback, but it’s also designed to not spill the beans too much on what the final build of Android 12 will look like. With that in mind, many of the features in an earlier Android 12 leak seem right on the money. This public release is a sanitized build with a lot of stuff turned off, but the more we flip on hidden flags and catch hints in the documentation, the more this build looks like a solid halfway point between Android 11 and those leaked Android 12 screenshots. Ars always has great overviews of upcoming Android releases, and this one is no exception.
Today, we’re releasing the first Developer Preview of Android 12, the next version of Android, for your testing and feedback. With each version, we’re working to make the OS smarter, easier to use, and better performing, with privacy and security at the core. In Android 12 we’re also working to give you new tools for building great experiences for users. Starting with things like compatible media transcoding, which helps your app to work with the latest video formats if you don’t already support them, and easier copy/paste of rich content into your apps, like images and videos. We’re also adding privacy protections and optimizing performance to keep your apps responsive. As is standard practice by now, this first Developer Preview focuses mostly on under-the-hood and developer features, leaving the user-focused features for later releases.
Google is exploring an alternative to Apple Inc.’s new anti-tracking feature, the latest sign that the internet industry is slowly embracing user privacy, according to people with knowledge of the matter. Internally, the search giant is discussing how it can limit data collection and cross-app tracking on the Android operating system in a way that is less stringent than Apple’s solution, said the people, who asked not to be identified discussing private plans. Of course it’s going to be less stringent than Apple’s solution. Can’t limited ad tracking too much if ad tracking is how you make money.
Remember HarmonyOS, the operating system Huawei claimed it had written from the ground-up? Yeah it’s just Android 10. After getting access to HarmonyOS through a grossly invasive sign-up process, firing up the SDK and emulator, and poring over the developer documents, I can’t come to any other conclusion: HarmonyOS is essentially an Android fork. The way that Huawei describes the OS to the press and in developer documents doesn’t seem to have much to do with what the company is actually shipping. The developer documents appear almost purposefully written to confuse the reader; any bit of actual shipping code to which you hold up a magnifying glass looks like Android with no major changes. The phrase “fake it till you make it” is often given as motivational advice, but I’ve never seen it applied to OS development before. If you’ve ever seen a modern Huawei Android phone, HarmonyOS is largely the same thing… with a few strings changed. So while there’s not much new to see, we can at least dissect HarmonyOS and debunk some of Huawei’s claims about its “brand-new” operating system. So nothing new under the sun here.
The Google kills Android Things, its IoT OS, in January | Ars Technica, a version of Android meant for the Internet of Things. Google announced it had basically given up on the project as a general-purpose IoT operating system in 2019, but now there’s an official shutdown date thanks to a new FAQ page detailing the demise of the OS. Google promised three year of updates, but with the last update coming out in August 2019 and Android Things being launched in May 2018, Google made it to 1 year and 3 months.
Over 3 years ago, Google announced Project Treble, a major rearchitecting of Android designed to speed up software updates. While the architecture introduced by Project Treble has helped OEMs to speed up the delivery of major Android OS updates and monthly security patches, it has had an adverse effect on SoC providers like Qualcomm. In fact, Treble has actually increased the complexity, and thus the engineering costs, associated with providing Android OS update support for any given chipset. That has limited the length of support that Qualcomm can provide for its SoCs, but that will soon change. All Snapdragon SoCs launching with Android 11 or later—starting with the Snapdragon 888, Qualcomm will support 4 Android OS version updates as well as 4 years of security updates. That’s an additional year than they previously provided for their flagship 800-series chipsets. Since virtually all popular Android devices use Qualcomm chipsets, this is a big boon for Android users.
One of the biggest changes in Android in recent years that flew under the radar, relatively speaking against its importance, was the introduction of Project Mainline in Android 10. Google mandates the inclusion of specific Mainline modules across Android releases, with Android 11 coming in with a combined compulsory total of 25 Mainline modules. Here is an explanation on what Project Mainline is and what it aims to solve, alongside a list of all of Android’s Project Mainline modules. A great overview of this very important, relatively new part of Android.
A few weeks ago, I found myself in need of a repair for a borked camera lens on my iPhone 11. I do everything in my power to essentially encase my Apple products in bubble wrap, but a nearly imperceptible fracture in one lens had greatly impacted the functionality of my phone’s camera. I hadn’t anticipated that repairing it was going to be a whole thing, but finding a way to get it repaired quickly in my area turned out to be futile. And repairing it myself? Pfft, forget it. This inability to quickly remedy such a small issue stuck with me as I was demoing the Fairphone 3+, a £425.00 (roughly $550) modular phone currently only available overseas. I desperately wish it or something like it were available in the United States because it makes it so easy to repair that just about anyone can fix their own phone—a rarity in this gadget repair dystopia we’re living in. This should be more normal than it is.
Android 11 has arrived! The latest release is all about helping you get to what’s important on your phone with easier ways to help you manage your conversations, connected devices, privacy, and much more. In honor of the 11th version of Android, here are 11 new things that are coming in Android 11. That’s the Google PR blurb, and here’s the conclusion from The Verge’s review of Android 11: When (or, sadly, if) the update arrives on your Android phone, what you’ll find is that a few important things that used to get lost in the interface are now easier to find. You’ll also see that Android is still playing catch-up with iOS when it comes to privacy restrictions, but progress is nevertheless being made. Mostly, though, you’ll get a very familiar interface that does very familiar things. That’s not a complaint, just a recognition that Android 11 is a mature OS, so year-over-year improvements tend to be in the “slow and steady” category. Coming to a phone near you. At some point. Maybe. Who knows.
Android may have started with the mantra that developers are allowed to do anything as long as they can code it, but things have changed over the years as security and privacy became higher priorities. Every major update over the last decade has shuttered features or added restrictions in the name of protecting users, but some sacrifices may not have been entirely necessary. Another Android 11 trade-off has emerged, this time taking away the ability for users to select third-party camera apps to take pictures or videos on behalf of other apps, forcing users to rely only on the built-in camera app. They’re small changes, but they’ve been adding up over the years to make Android less and less desirable. Sadly, there’s really no other viable option, so we’re stuck with it.
Google for several years has collected app-usage data collected from Android phones to develop and advance its own competing apps, a new report alleges. The project, called Android Lockbox, “collects sensitive Android user data” for use within Google and has been in effect since at least 2013, The Information reports. Abuse such as this by platform vendors will continue to take place, and it will continue to get worse and more brazen, because governments and judicial systems simply aren’t designed to deal with the massive international nebulous webs of dozens of individual legal entities that make up a single company. They wield immense power, can spend infinite amounts of money to change any law they don’t like, and aren’t subservient to the people – i.e., the government – like they should be. Either governments start drastically cutting these massive corporations up – divide and conquer – or the entire western world is at risk of becoming corporate dystopias.
We’re glad to announce a new collaboration between Microsoft and Google for the benefit of the web developer community. Microsoft’s PWABuilder and Google’s Bubblewrap are now working together to help developers publish PWAs in the Google Play Store. PWABuilder.com is Microsoft’s open source developer tool that helps you build high quality PWAs and publish them in app stores. Bubblewrap is Google’s command line utility and library to generate and sign Google Play Store packages from Progressive Web Apps. I hope this further improves PWAs, since they are a godsend for smaller operating systems and even bigger ones that are not macOS or Windows. Sure, nothing beats a proper native application, but if the choice is no application or a reasonably integrated PWA – I’ll take the PWA.
The first Android version to support 64-bit architecture was Android 5.0 Lollipop, introduced back in November 2014. Since then, more and more 64-bit processors shipped, and today, virtually all Android devices are capable of running 64-bit software (excluding one or two or more oddballs). However, Google Chrome has never made the jump and is only available in a 32-bit flavor, potentially leading to some unnecessary security and performance degradations. That’s finally changing: Starting with Chrome 85, phones running Android 10 and higher will automatically receive a 64-bit version. It seems odd to me that it took them this long to move one of the most important applications in Android to 64 bit.