读取 CPU 使用率时出错:/proc/stat(权限被拒绝)
Posted
技术标签:
【中文标题】读取 CPU 使用率时出错:/proc/stat(权限被拒绝)【英文标题】:Error reading CPU usage: /proc/stat (permission denied) 【发布时间】:2019-03-17 21:12:47 【问题描述】:附加的是我在运行应用程序后出现在 android Studio 中的错误消息。我能够在设备上构建和运行程序而没有任何问题。直到我根据 Google 的新应用要求开始针对 API 级别 26 之前,我没有收到此错误。有关如何修复错误的任何建议?另外,如果不解决此错误,将来会导致问题吗?
谢谢!
【问题讨论】:
您是否在您的设备中授予了存储权限? @CopsOnRoad,是的,我已授予存储权限。此错误来自已在 Play 商店上架一年多的应用。更新到 API 26 后,我现在才收到错误消息。 您在哪个 android 版本中收到此错误? 【参考方案1】:使用 API 级别 26 或更高级别无法访问 /proc/stat。谷歌已将此限制为非系统应用程序。从 API 级别 26 开始,只有系统应用可以访问 /proc/stat
更多信息 https://issuetracker.google.com/issues/37140047
【讨论】:
【参考方案2】:这意味着您之前以 API dangerous permissions。
这就是为什么您的应用程序之前运行成功的原因,而当您将其更改为 26 时,您开始出现错误。您必须在运行时使用ActivityCompat.requestPermissions(...) 询问权限
【讨论】:
谢谢,我实际上已经在运行时为危险权限请求权限。我在清单文件中请求 RECORD_AUDIO、WRITE_EXTERNAL_STORAGE、READ_INTERNAL_STORAGE 和 INTERNET 的权限。 RECORD_AUDIO 和 WRITE_EXTERNAL _STORAGE 都被认为是危险的,所以我也在运行时请求许可。但是,我不喜欢 INTERNET 或 READ_INTERNAL_STORAGE,因为它们并不危险。我确实注意到 READ_INTERNAL_STORAGE 不在 Android 8.0 的任何列表中,这不再是权限了吗?这会导致问题吗?READ_INTERNAL_STORAGE
在我看来Android系统已经给你了,你不需要从Android 8.0开始指定它。以上是关于读取 CPU 使用率时出错:/proc/stat(权限被拒绝)的主要内容,如果未能解决你的问题,请参考以下文章