Preparing your Gradle build for package visibility in Android 11

Hallo Friends cellphone prices and specifications, In the article that you are reading this time with the title Preparing your Gradle build for package visibility in Android 11, we have prepared this article well for you to read and take the information in it. hopefully the contents of the post Article #11WeeksOfAndroid, Article Android, Article android developers, Article Android Gradle Plugin, Article Android Studio, Article Privacy, what we write you can understand. all right, have a nice reading..






Posted by David Winer, Product Manager



illustration of mobile device with lock


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


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. The new <queries> element in your app or library’s Android manifest allows you to describe which other apps you might need to interact with. For more information about this change, check out our Medium post on package visibility in Android 11.



Android Studio and Gradle support


If you are using Android Gradle plugin 4.1+, your tools should work with the new <queries> declaration. However, older versions of the Android Gradle plugin are not aware of this new element. If you add the <queries> element or if you start relying on a library or SDK that supports targeting Android 11, you may encounter manifest merging errors. For example, when building your app you may see the following error in the Build Output Window:


Android resource linking failed
/Users/sample/AndroidStudioProjects/MyApp/app/build/intermediates/merged_manifests/debug/AndroidManifest.xml:18: error: unexpected element <queries> found in <manifest>



Alternatively, you may see an error in the Build Output Window that directs you to the Manifest merger logs:


Manifest merger failed with multiple errors, see logs


Upon expanding the Merged Manifest view you would then see an additional error:


Error: Missing 'package' key attribute on element package



Android Gradle plugin fixes


The best solution to deal with these errors is to upgrade to Android Gradle plugin 4.1 Beta.


We know that not everyone is ready to upgrade to the latest version, though, and you may be relying on old versions of Gradle or libraries that aren’t compatible with 4.1.


So, today we issued a set of dot releases for the Android Gradle plugin that are compatible with <queries>:



For example, if you are currently using Android Gradle plugin version 4.0.0, you can upgrade the version in your project-level build.gradle file:


 buildscript {

repositories {
google()
jcenter()
}

dependencies {
// classpath 'com.android.tools.build:gradle:4.0.0'
classpath 'com.android.tools.build:gradle:4.0.1'
}
}



For more information on this new feature in Android 11, check out the package visibility documentation and the Android Gradle plugin release notes.





Thus the article Preparing your Gradle build for package visibility in Android 11

Enough of the articles Preparing your Gradle build for package visibility in Android 11 this time, hopefully it can be of benefit to all of you. well, see you in another article post.


You are now reading the article Preparing your Gradle build for package visibility in Android 11 By address link https://cellphone-prices-and-specifications.blogspot.com/2020/07/preparing-your-gradle-build-for-package.html


Previous
Next Post »
0 Komentar untuk "Preparing your Gradle build for package visibility in Android 11"

Terima Kasih Sudah Berkomentar