在我的AndroidManifest.xml文件中,我有这两行代码:
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:required="false" android:name="android.hardware.camera" />
但是当我上传到Google Play时,它指出需要相机。如果我使用aapt工具,它会显示:"uses-feature:name='android.hardware.camera'"
有人知道为什么它忽略了我的代码并要求设备有相机吗?
编辑:以下是我整个“uses”部分的参考:
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:required="false" android:name="android.hardware.camera" />
<uses-feature android:required="false" android:name="android.hardware.camera.autofocus" />
<uses-feature android:required="false" android:name="android.hardware.camera.front"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-feature android:required="false" android:name="android.hardware.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-feature android:required="false" android:name="android.hardware.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-feature android:required="false" android:name="android.hardware.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-feature android:required="false" android:name="android.hardware.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.INTERNET" />
<uses-feature android:required="false" android:name="android.hardware.INTERNET" />
<uses-permission android:name="android.permission.FLASHLIGHT" />
<uses-feature android:required="false" android:name="android.hardware.FLASHLIGHT" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-feature android:required="false" android:name="android.hardware.vibrate" />
<uses-permission android:name="android.permission.CALL_PHONE" />
<uses-feature android:required="false" android:name="android.hardware.CALL_PHONE"/>
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<uses-permission android:name="asn.apps.asncrm.permission.C2D_MESSAGE" />
<uses-permission android:name="com.google.android.c2dm.permission.SEND" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-feature android:required="false" android:name="android.hardware.telephony"/>
android.hardware.camera2
,因为在API 21中,android.hardware.camera
已被弃用。http://developer.android.com/reference/android/hardware/Camera.html - Melvin<uses-feature>
元素都是虚假的。你不能随意发明新的功能名称,比如android.hardware.INTERNET
。因此,首先要删除无效的<uses-feature>
元素,限制自己使用实际存在的元素,看看是否有所帮助。我刚在Android Studio 1.4.1中创建了一个简单的项目,将你清单片段的前四行添加到项目的清单中,然后aapt dump badging
显示这些功能不是必需的。 - CommonsWare