一.申请权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
聪明的你会发现这里有两个用户权限。一个是sdk写入权限,一个是修改系统设置权限这是一个特殊的权限。
在android 6.0及以后,WRITE_SETTINGS权限的保护等级已经由原来的dangerous升级为signature,这意味着我们的APP需要用系统签名或者成为系统预装软件才能够申请此权限,并且还需要提示用户跳转到修改系统的设置界面去授予此权限。
很多大神已经给出了答案:
//申请android.permission.WRITE_SETTINGS权限的方式
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
//如果当前平台版本大于23平台
if (!Settings.System.canWrite(this)) {
//如果没有修改系统的权限这请求修改系统的权限
Intent intent = new Intent(Settings.ACTION_MANAGE_WRITE_SETTINGS);
intent.setData(Uri.parse("package:" + getPackageName()));
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivityForResult(intent, 0);
} else {

最低0.47元/天 解锁文章
1885

被折叠的 条评论
为什么被折叠?



