Update, August 20 (06:00 pm ET): Google has now explained why it made this change.
What you need to know
- An Android 11 update will change how third-party camera apps work on Google's operating system.
- Users will no longer be able to use apps that aren't built-in to capture photos in third-party apps.
- Google says that this is done for security reasons.
With Android 11, Google is imposing an additional limit on how camera apps may plug into the system. Specifically, it's limiting what camera apps other than the default built-in app would be able to do.
As reported by Android Police, Google is mandating that third-party app without their own camera functionality can only launch the default camera app to carry out either image or video capture. Before this, a user would be presented with a dialogue allowing them to choose from the camera apps installed on their device.
Starting in Android 11, only pre-installed system camera apps can respond to the following intent actions:
If more than one pre-installed system camera app is available, the system presents a dialog for the user to select an app. If you want your app to use a specific third-party camera app to capture images or videos on its behalf, you can make these intents explicit by setting a package name or component for the intent.
Google says it's doing this for safety reasons, and on the consumer end, it's hard to see how this would be a huge deal for most people. If you change your default camera app to another one, you won't notice the change in most common scenarios like quickly shaping photos by double-clicking the power button and the like.
That said, there is one use case where this becomes troublesome. If a user were to set another app as the default camera app and then disable the built-in camera app, it would effectively break the system. You won't be able to capture images in apps without their own camera functionality until you re-enable it and use it side-by-side your preferred camera option. It's not ideal, but it's not terrible either.
Update, August 20 (06:00 pm ET) — Google explains the rationale behind the move
Google has now clarified the reason behind the change, explaining that it's designed to preserve location data from being incorrectly processed. It has also updated the developer documentation referenced earlier, rewording it to now note:
This is designed to ensure that the EXIF location metadata is correctly processed based on the location permissions defined within the app sending the intent.
To receive EXIF location metadata from the pre-installed system camera app when using intents that have one of the preceding intent actions, your app must declare ACCESS_MEDIA_LOCATION in addition to the ACCESS_COARSE_LOCATION or ACCESS_FINE_LOCATION permission.
This change does not affect users' capability to install and use any camera app to capture images or videos directly. A user can set a third party camera app as the default camera app. This change also doesn't affect intent actions that launch the user-specified default camera app.
In other words, it's something that would really only affect a small minority of users, while benefiting the majority.
We may earn a commission for purchases using our links. Learn more.