提问者:小点点

Android.Permission.Write_Settings是否只授予系统应用程序?


我们目前正在开发一个应用程序,我们想要改变一些系统设置,当然有用户的许可。 android文档说明,要做到这一点,您必须添加以下权限:

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

此外,还必须明确要求用户启用此权限。 从https://developer.android.com/reference/android/manifest.permission#write_settings中摘录如下:

注意:如果应用程序的目标是API级别23或更高,应用程序用户必须通过权限管理屏幕将此权限明确授予应用程序。 应用程序通过发送带有actionsettings.action_manage_write_settings的意图请求用户的批准。 应用程序可以通过调用settings.system.CanWrite()来检查它是否具有此授权。

到目前为止,情况是很清楚的。 然而,当权限被添加到AndroidManifest.xml文件时,Android Studio却抱怨“权限只被授予系统应用”。 现在,这是令人困惑的,因为我没有找到任何文档说明它确实只授予系统应用程序。

那么,我想问一下,是否有人遇到过这个问题,是否有某种文档对此进行了详细解释? 还是我只是错过了什么?


共1个答案

匿名用户

正如用户passsy在Brian提供的stackoverflow问题中所述,android.permission.write_settings具有“Signature”Android:ProtectionLevel,这使得该权限在API级别23之后无法在用户应用程序中使用。

有关权限保护级别的说明,请参阅https://developer.android.com/guide/topics/manifest/permission-element#plevel。