一、异常Log信息
二、在AndroidManifest.xml中已添加READ_PHONE_STATE权限,能在android6.0以下的系统正常运行
三、处理办法:调用动态获取权限API
public class PermissionUtil { public static String[] PERMISSION = {Manifest.permission.READ_PHONE_STATE}; public static boolean isLacksOfPermission(String permission) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { return ContextCompat.checkSelfPermission( PinkeApplication.getInstance().getApplicationContext(), permission) == PackageManager.PERMISSION_DENIED; } return false; } }
@Override protected void onResume() { super.onResume(); if (PermissionUtil.isLacksOfPermission(PermissionUtil.PERMISSION[0])) { ActivityCompat.requestPermissions(this, PermissionUtil.PERMISSION, 0x12); } else { setDeviceId(); } }
private void setDeviceId() { SharedPrefUtil.putString(getApplicationContext(), Constants.KEY_DEVICE_ID, Config.getDeviceID()); }
本文介绍了解决Android应用中READ_PHONE_STATE权限在6.0及以上版本系统中动态请求的问题,通过自定义权限检查和请求流程确保应用可以跨版本稳定运行。
1万+

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



