澄清清单中的许可

时间:2015-04-24 10:13:42

标签: android

如果我在manifest中写下这个:

<uses-permission android:name="android.permission.CAMERA" />

编辑:

还有以下几行:

<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.flash" />

即使device没有camera,我的应用仍会继续运行吗?

4 个答案:

答案 0 :(得分:6)

是的,您的应用将会运行。

您可以在android:required="true"代码中uses-feature对此进行限制。 More关于uses-feature

已修改问题的更新

android:required的默认值(如果未声明)为true。因此,您必须添加android:required="false",如下所示:

<uses-feature android:name="android.hardware.camera" android:required="false"/>
<uses-feature android:name="android.hardware.camera.flash" android:required="false"/>

答案 1 :(得分:3)

您的应用程序成功运行。

Permission仅与访问设备的ComponentFeatures相关。像相机,NFC,蓝牙等

例如,如果我想从我的应用访问相机,则需要在我的应用中添加manifest.xml权限,以便从我们的应用访问相机。

答案 2 :(得分:1)

它可以在您的开发环境中运行,但它可能会被市场过滤掉。来自documentation

  

严格来说,Google Play不会基于此进行过滤   元素。但是,它确实读取了元素以确定是否   应用程序具有可能不存在的硬件功能要求   在元素中正确声明。例如,如果是   应用程序请求CAMERA权限但不声明    android.hardware.camera,Google Play的元素   认为应用程序需要相机,不应该   显示给设备不提供摄像头的用户。

答案 3 :(得分:0)

正如MD权限所指出的那样,权限仅限于获取对该技术的访问权限。其中,使用功能来限制应用程序安装在无法提供某些功能的设备上,如Paritosh指出的那样。