可以使用以下代码来检查是否授予了WRITE_SETTINGS权限:
// 检查是否授予了WRITE_SETTINGS权限
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M || Settings.System.canWrite(context)) {
// 权限已授予
// 在此处执行你的逻辑
} else {
// 请求WRITE_SETTINGS权限
Intent intent = new Intent(Settings.ACTION_MANAGE_WRITE_SETTINGS);
intent.setData(Uri.parse("package:" + context.getPackageName()));
context.startActivity(intent);
}
请确保在AndroidManifest.xml文件中添加WRITE_SETTINGS权限:
这段代码首先检查设备的Android版本是否低于23,如果是,则默认已经授予了WRITE_SETTINGS权限。如果设备的Android版本高于或等于23,则使用Settings.System.canWrite()
方法来检查权限是否已授予。
如果权限未授予,则通过启动一个Settings.ACTION_MANAGE_WRITE_SETTINGS
意图来请求WRITE_SETTINGS权限。这将打开一个系统设置页面,让用户手动授予权限。