是否可以通过管理员权限避免运行时权限?
我必须更改 Settings.System 中的某些内容,但不幸的是在 Android M 上,我必须要求用户允许我...
是否可以通过管理员权限避免运行时权限?
我必须更改 Settings.System 中的某些内容,但不幸的是在 Android M 上,我必须要求用户允许我...
在 api23 中,用户应用程序(如非系统应用程序)的 WRITE_SETTINGS 权限已被撤销。通过查看 android 中的源代码,我们可以看到此权限的以下保护级别:
<permission android:name="android.permission.WRITE_SETTINGS"
android:label="@string/permlab_writeSettings"
android:description="@string/permdesc_writeSettings"
android:protectionLevel="signature|preinstalled|appop|pre23" />
这意味着您可以通过以下任一方式获得此权限: 1.在清单中将 sdk 定位为低于 23 2.通过系统签名,通过在系统中预安装应用程序(/app 或 /priv-app)或通过 appop 获得权限(不是相关的)。
因此,作为针对 sdk23 的用户应用程序,您无法获得此权限。目标 sdk 22 及更低版本从清单中获得此权限。它工作正常。