Android项目能否仅为特定产品风味配置AD_ID等权限?
仅为特定产品风味配置AD_ID权限的简便方法
直接利用Android Gradle的源集特性就能轻松实现,不需要复杂的Manifest占位符或脚本逻辑,步骤如下:
- 在项目的
src目录下,为需要AD_ID权限的产品风味(比如带广告的免费版free)创建专属的Manifest文件路径:src/free/AndroidManifest.xml - 在这个风味专属的Manifest文件中,仅添加AD_ID权限声明:
<uses-permission android:name="com.google.android.gms.permission.AD_ID" />
- 确保主模块的
src/main/AndroidManifest.xml中不要添加这个权限,这样其他不需要广告的风味(比如付费版paid)构建时就不会包含该权限。
Gradle会自动合并不同源集的Manifest内容,只有当你构建目标风味时,该风味专属Manifest里的权限才会被纳入最终的APK/AAB中,完美适配你的需求。
内容的提问来源于stack exchange,提问作者AppLover
相关产品推荐
相关产品推荐

