【问题标题】:获取运行 Android 8 Oreo 的设备的 CPU 使用率
【发布时间】:2018-02-21 06:00:17
【问题描述】:

我真的很困惑。我刚刚注意到,从 Android 8 开始,所有系统调用(如 /proc/stat)都将被禁用。好的,但是在 Android 8 中获取 CPU 使用率的方法是什么?根本没有系统调用。是否有一些我不熟悉的 API?

我真的希望有我现在看不到的解决方案。

【问题讨论】:

    标签: android system-calls android-permissions android-8.0-oreo


    【解决方案1】:

    精确的 cpu 使用率,因为普通应用程序似乎无法使用 oreo。但是在Android上我们可以通过cpu频率来猜测cpu使用率。

    我做了一个允许这样做的小库。以下是希望足够精确的代码:以classsimple app 的形式提供。

    【讨论】:

      【解决方案2】:

      不,所有 /proc/stat 都已对非系统应用程序禁用,作为旁道。

      更多信息,谷歌官方回复:https://issuetracker.google.com/issues/37140047

      【讨论】:

      • 感谢您的信息。似乎每个 Android 版本的 root 用户都会越来越多;)
      • 说真的@Google,你一直在给我更多升级的理由。
      • 进程 p = Runtime.getRunime().exec("su")。如果用户允许您访问 SU,则连接到 Steam(p.getOutputstream()、p.getInputStream())并开始执行您在 shell 中的命令。您不能让您的主应用程序进程以 root 身份运行。目标设备必须安装根库。
      • @KamenStoykov 所以基本上尝试读取我们之前相同的文件,但是一旦授予 su 就通过 adb shell 命令?
      • @Flyview 准确
      猜你喜欢
      • 1970-01-01
      • 2012-08-04
      • 1970-01-01
      • 1970-01-01
      • 2016-08-21
      • 1970-01-01
      • 2016-08-17
      • 1970-01-01
      • 2011-03-02
      相关资源
      最近更新 更多