Android 无法访问Context.USAGE\u STATS\u服务
我正试图通过以下方式访问棒棒糖中的Android 无法访问Context.USAGE\u STATS\u服务,android,service,android-5.0-lollipop,Android,Service,Android 5.0 Lollipop,我正试图通过以下方式访问棒棒糖中的用法统计服务: final usagestastsmanager usagestastsmanager=(usagestastsmanager)this.getSystemService(Context.USAGE\u STATS\u SERVICE) Android Studio一直说它不是一个有效的常量 它不是一个公开可用的常量,因为使用中的@hide注释隐藏了USAGE\u STAT\u SERVICE。这一点是由中缺少使用情况统计服务支持的 getSy
用法统计服务
:
final usagestastsmanager usagestastsmanager=(usagestastsmanager)this.getSystemService(Context.USAGE\u STATS\u SERVICE)代码>
Android Studio一直说它不是一个有效的常量
它不是一个公开可用的常量,因为使用中的@hide
注释隐藏了USAGE\u STAT\u SERVICE
。这一点是由中缺少使用情况统计服务
支持的
getSystemService
具有仅接受@ServiceName
常数
这是由于“属性检查”,不应影响编译。可能是
我还使用直接字符串成功地获得了一个UsageManagerService
实例
UsageStatsManager manager = (UsageStatsManager) getSystemService("usagestats");
此外,值得注意的是
Studio只是将其标记为无法授予的权限(根据文档,技术上是正确的),因此Studio此时不知道此类“特殊”权限
可以在中授予使用权限
Settings > Security > Apps with usage access
我看到这个,在问之前试过了。我清理了储藏室等。。。问题仍然存在。我认为在没有公认答案的情况下,用手指着另一个问题来回答问题不是一个好方法。我不是在回答你的问题(虽然我指给你的那个人确实回答了这个问题,是发布答案的作者),我指的是与你的问题相同的材料,正如你所说的,没有什么能使它与其他的区别。更新到android 0.8.14。使用Suppress警告。正在更新sdk21。清除和重建lint缓存我很感激,但这些解决方案对我都不起作用。我昨天使用直接字符串解决了它,但不得不删除常量的属性检查。我认为注释中的@hide与编译无关,只是文档。
Settings > Security > Apps with usage access