Following the revision of guidelines for Android OEMs in August to reduce the number of Google apps pre-installed on devices, the Mountain View firm has once again taken steps to limit the harassment potential of bloatware.
Ever since the inception of Android, Google has allowed its partner OEMs to mould the operating system as they see fit, with a few caveats if they want access to the Google Play store. Over the years, while the company has started to tighten the loose ends with each new iteration of Android, manufacturers still have the ability to tweak several critical aspects when operating on Android Lollipop or below. Google is changing that with Android 6.0 Marshmallow. Apps aimed at 6.0 Marshmallow (API level 23) need to request permission to access certain protected features.
The apps will need permission before accessing certain protected features, Google has directed its partners in the Compatibility Definition document (via Android Police). The company has also made it mandatory for every app to use a dialogue box to seek permission. Furthermore, OEMs will not be able to offer any runtime permissions to pre-installed apps (more popularly known as bloatware). All these permissions will also appear in the Settings app for the user to view and tweak later.
The idea is simple. Smartphone manufacturers like Samsung, Xiaomi, and LG pack in a number of pre-installed apps on their smartphones. To make things worse, users don't get the option to delete the bloatware from their device. While these third-party manufacturers can continue to have pre-installed apps on their devices, users will have the final say on what a particular app does in the background.
Here's the portion of the document that talks about it.
9.1 Permissions
Permissions with a protection level of dangerous are runtime permissions. Applications with targetSdkVersion > 22 request them at runtime. Device implementations:
- MUST show a dedicated interface for the user to decide whether to grant the requested runtime permissions and also provide an interface for the user to manage runtime permissions.
- MUST have one and only one implementation of both user interfaces.
- MUST NOT grant any runtime permissions to preinstalled apps unless: the user's consent can be obtained before the application uses it or the runtime permissions are associated with an intent pattern for which the preinstalled application is set as the default handler.
With Android 6.0 Marshmallow, the company has taken several major steps to address several concerns that users have had for years. Just recently we learned that OEMs also have to enable full disk encryption by default on Android 6.0, and also, all Android smartphones running on 6.0 Marshmallow need to include Doze mode.
For the latest tech news and reviews, follow Gadgets 360 on X, Facebook, WhatsApp, Threads and Google News. For the latest videos on gadgets and tech, subscribe to our YouTube channel. If you want to know everything about top influencers, follow our in-house Who'sThat360 on Instagram and YouTube.