android中的android.permission.PACKAGE_USAGE_STATS权限

时间:2017-03-16 13:09:59

标签: android

这个权限是否可以在19 api以下工作,或者不是android和第二件事,如果我们授予此权限,那么我是否应该获得用户的许可,如果是,那么在哪个sdk级别需要询问?没有得到适当的文件。

2 个答案:

答案 0 :(得分:1)

  

此权限是否可以低于19 api

权限本身PACKAGE_USAGE_STATS仅在API 23中添加,而UsageStatsManager仅在API 21中添加。在早期版本的Android上无法使用这些API,因为它们根本不存在

  

如果我们授予此权限,那么我是否应该获得用户的许可,如果是,那么在哪个sdk级别需要询问?没有得到适当的文件。

您正在寻找Requesting Permissions at Run Time文档。在运行API 23+的任何设备上,您的用户都可以随意撤消权限,通常您应该在运行时请求权限。

但是,您需要注意UsageStatsManager文档中的这个注释:

  

此API需要android.permission.PACKAGE_USAGE_STATS权限,这是系统级权限,不会授予第三方应用。但是,声明权限意味着有意使用API​​,设备用户可以通过“设置”应用程序授予权限。

答案 1 :(得分:1)

API level 21 LOLLYPOP

中添加了此权限

并且无需在运行时授予此权限。

不幸的是,您无法像运行危险权限那样在运行时请求PACKAGE_USAGE_STATS。用户需要通过“设置”应用程序手动授予权限,如UsageStatsManager文档中所述:Android Developer

仅供参考:授予API level 23或更高MARSHMALLOW

的运行时权限