有的时候我们在AndroidManifest.xml 中明明已经设置了某个权限,比如:

 <uses-permissionandroid:name="android.permission.ACCESS_COARSE_LOCATION"/>

 但是可能仍会出现异常:java.lang.SecurityException (异常类型可以百度)Neither user 10155 nor current process has android.permission.ACCESS_COARSE_LOCATION 这样的错误,其中10155是android的系统UID,所以如果你没有系统的UID  使用Platform的APK签名即使配置的了权限,仍然没有权限使用相关方法的。情况类似于android手机的USB调试,有些手机,即使你打开了USB调试仍然会提示你是否进行连接,如果你选择了否,连接仍会失败。

 

  基于此种情况,本身就是获取某种敏感权限时才会发生,所以如果应用对于此种权限依赖不高,可作异常捕捉处理:

 

  1、直接在使用此种权限的地方捕捉异常,(是在直接调用系统方法的地方加try,在外层添加仍会报错)。

  2、提高应用启动的进程权限:android:sharedUserId="android.uid.system" (网络资料,没有测试)。

相关文章:

  • 2021-12-28
  • 2022-12-23
  • 2021-06-21
  • 2021-06-11
  • 2022-12-23
  • 2021-11-06
  • 2021-12-07
猜你喜欢
  • 2021-05-19
  • 2021-04-24
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-22
相关资源
相似解决方案