

If you add the element or if you start relying on a library or SDK that supports targeting Android 11, you may encounter manifest merging errors. However, older versions of the Android Gradle plugin are not aware of this new element. If you are using Android Gradle plugin 4.1+, your tools should work with the new declaration.

For more information about this change, check out our Medium post on package visibility in Android 11. The new element in your app or library’s Android manifest allows you to describe which other apps you might need to interact with. To provide better accountability for access to installed apps, apps targeting Android 11 (API level 30) will see a filtered list of installed apps by default. To better protect user privacy, we updated how apps view and interact with other installed apps on Android 11.

Often, however, this approach provides much more access than most apps need to implement their functionality. On Android 10 and earlier, you could query the full set of installed apps using methods like queryIntentActivities(). One of the central themes for Android 11 has been protecting user privacy.
