gpt4 book ai didi

Android 23 不为使用权限元素生成 list 文件

转载 作者:太空宇宙 更新时间:2023-11-03 12:49:06 24 4
gpt4 key购买 nike

我有几个相互依赖的模块的项目,我们刚刚升级到目标 android-23。

问题是,应用程序似乎没有生成 Manifest.permission.ACCESS_FINE_LOCATION等我使用 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> 时的属性在 AndroidManifest 中。

但是,当我执行 <permission android:name="android.permission.ACCESS_FINE_LOCATION"/> 时它确实会生成属性但这似乎与我见过的所有示例都不一样。

作为引用,我们的版本是:

minSdkVersion = 18
compileSdkVersion = 23
targetSdkVersion = 23
buildToolsVersion = "23.0.2"

和支持库是 23.0.1

有人遇到过这个问题或知道发生了什么事吗?

更新添加我在 build/generated/source/r/{flavor}/com/example/Manifest.java 中看到的生成的文件内容

public final class Manifest {
public static final class permission {
public static final String C2D_MESSAGE="com.example.permission.C2D_MESSAGE";
public static final String RECEIVE_ADM_MESSAGE="com.example.permission.RECEIVE_ADM_MESSAGE";
public static final String UA_DATA="com.example.permission.UA_DATA";
}
}

最佳答案

这是预期的。

当您添加 <permission> 时在您的 list 中,您正在定义您自己的权限。所以,这被添加到类 <your_package_name>.Manifest .

但是,当您添加 <uses-permission>在您的 list 中,您定义新权限,但指定您正在请求已由其他地方定义的权限(主要不在您的应用程序中)。因此,在这种情况下,权限不会添加到类 <your_package_name>.Manifest .相反,它可以在 <package_defining_the_permission>.Manifest 找到。类(class)。对于 ACCESS_FINE_LOCATION权限,它在名为 android 的包中定义: http://androidxref.com/6.0.1_r10/xref/frameworks/base/core/res/AndroidManifest.xml#540

关于Android 23 不为使用权限元素生成 list 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35711437/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com