Android 6.0权限问题
2016-08-01 13:35
381 查看
项目在小米6.0上面运行时,使用打电话和获取相册的功能时崩溃了,但在AndroidManifest.xml中声明了相关权限
1.申请权限
遇到问题:项目使用eclipse,报错:找不到方法checkSelfPermission和requestPermissions,更新support-v4包即可。
2.回调处理
3.使用
在需要打电话操作前请求权限
详细介绍http://blog.csdn.net/hudashi/article/details/50775180
<uses-permission android:name="android.permission.CALL_PHONE" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
1.申请权限
private static final int MY_PERMISSIONS_REQUEST_CALL = 1; private void requestCallPermission(){ //检测某个权限是否已经被授予 if (ContextCompat.checkSelfPermission(this, Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) { //申请权限 ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.CALL_PHONE}, MY_PERMISSIONS_REQUEST_CALL); } }
遇到问题:项目使用eclipse,报错:找不到方法checkSelfPermission和requestPermissions,更新support-v4包即可。
2.回调处理
//回调处理授权结果 @Override public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { if (grantResults!=null&&grantResults.length>0) { switch (requestCode) { case MY_PERMISSIONS_REQUEST_CALL: if (grantResults[0] == PackageManager.PERMISSION_GRANTED) { //执行打电话的操作 } break; default: break; } return; } super.onRequestPermissionsResult(requestCode, permissions, grantResults); }
3.使用
在需要打电话操作前请求权限
/** * 判断是否为6.0及其以上系统 */ if(Build.VERSION.SDK_INT >= 23){ requestCallPermission(); }
详细介绍http://blog.csdn.net/hudashi/article/details/50775180
相关文章推荐
- 在android 6.0以上无法获取READ_PHONE_STATE权限的SecurityException的问题
- android 6.0 开发中 遇到权限授予方式变更的问题
- Android 6.0 运行时权限处理问题
- Android 6.0 权限管理的问题
- Android android 6.0权限校验及版本兼容问题
- Android 6.0权限问题
- 项目中处理 android 6.0 权限管理问题
- Android 6.0 运行时权限处理问题
- Android6.0的权限问题
- Android 6.0的权限问题
- 在android 6.0以上无法获取READ_PHONE_STATE权限的SecurityException的问题
- Android 6.0权限问题之Dexter库的使用
- android 6.0的权限问题
- Android 6.0 运行时权限处理问题
- android 6.0权限问题
- 解决Android 6.0动态添加权限问题
- 关于android 6.0权限问题
- 关于Android 6.0的权限问题这个大坑记录
- 在android 6.0以上无法获取READ_PHONE_STATE权限的SecurityException的问题
- Android 6.0 以上权限问题