使用官方AVD rev. 3
打电话给:
ActivityCompat.requestPermissions(activity,new String[]{"android.permission.USE_CREDENTIALS"},REQUEST_PERMISSION_CREDENTIALS);
立即开火:
onRequestPermissionsResult (int requestCode,String[] permissions,int[] grantResults)
结果代码是PackageManager.PERMISSION_DENIED
任何人都有修复?
更新:
已知受影响:
Manifest.permission.CHANGE_NETWORK_STATE Manifest.permission.WRITE_SETTINGS (solved,see Sam's answer) android.permission.USE_CREDENTIALS (solved,read Update 2) READ_SMS
更新2:
看到优秀的接受答案.从本质上讲,USE_CREDENTIALS现在是一个安全的许可.打败我为什么sdk不仅仅为它返回PERMISSION_GRANTED ……
解决方法
请参阅以下页面:
permissions by protection level和
protection level definitions.
Manifest.permission.CHANGE_NETWORK_STATE
Manifest.permission.WRITE_SETTINGS
这些都属于“signature | appop | pre23 | preinstalled”的保护级别,这意味着只有相同签名的应用程序(基本上是系统签名的),应用程序操作符,目标低于API级别23的应用程序和预先设定的应用程序才能拥有这些.
android.permission.USE_CREDENTIALS
这仅在API级别22及更低级别上需要.见this.
另外你应该看看Behavior Changes.