我的应用程序为用户提供对短信和电话呼叫的可选访问权限。我使用过:
<uses-permission android:name="android.permission.READ_PHONE_STATE" android:required="false"></uses-permission>
<uses-permission android:name="android.permission.SEND_SMS" android:required="false"></uses-permission>
<uses-permission android:name="android.permission.CALL_PHONE" android:required="false"></uses-permission>
Google Play 不会向无法访问蜂窝网络的设备公开此应用。似乎必需的 = false 参数无法完成其工作。
这是一个错误吗?我还能做些什么吗?
将所需的参数放在权限中?当你声明一个功能时,使用android:required参数,afaik...例如:
<uses-feature android:name="android.hardware.sensor.accelerometer" android:required="true" />
我认为您想做的是添加带有android:required="false"
的uses-feature
声明.
使用此表更新清单:http://developer.android.com/guide/topics/manifest/uses-feature-element.html#permissions-features
<uses-feature android:name="android.hardware.telephony" android:required="false" />
AndroidManifest.xml
文件的权限选项卡中查看所有权限。
在 中使用属性 android:required
<uses-permission
它仅适用于<uses-feature
,请参阅定义
用途功能:要控制过滤,请始终在 元素,而不是依靠谷歌播放 "发现"
<uses-permission>
元素中的要求。然后,如果 要禁用对特定功能的过滤,可以添加一个android:required="false"
声明的属性。
以下是暗示硬件功能的权限列表:
https://developer.android.com/guide/topics/manifest/uses-feature-element.html#permissions-features
根据您的元素:
您可能只需要添加:
<uses-feature android:name="android.hardware.telephony" android:required="false" />