java.lang.RuntimeException:无法暂停活动:java.lang.SecurityException:uid没有android.permission.UPDATE_DEVICE_STATS

时间:2016-09-15 05:30:49

标签: android

这个例外是我的主要活动:

  

java.lang.RuntimeException:无法暂停活动:
  java.lang.SecurityException:uid没有android.permission.UPDATE_DEVICE_STATS

我注意到这是Android 6.0.1(Marshmallow),设备是三星Galaxy J7。当我研究了权限UPDATE_DEVICE_STATS时,我发现系统应用需要此权限。

任何人都可以请指导我为什么这个异常突然出现,因为我的应用程序在其他设备上正常运行。

2 个答案:

答案 0 :(得分:0)

在6.0及以上版本中,您必须动态获取权限,而不是在应用程序安装时必须检查此link。权限有两种类型危险且非危险。

答案 1 :(得分:0)

对于Marshmallow及以上版本的Android版本,您必须检查用户是否接受所请求的权限,或者使用以下代码动态检查:

ActivityCompat.requestPermissions();

您必须检查每个权限运行时。

并确保您在清单中定义了以下权限:

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

不是

<user-permission android:name="android.permission.GET_TASKS" >
</user-permission>

另一个解决方案是在清单文件中定义targetSdkVersion,如下所示:

android:targetSdkVersion="21"