我是 Android 软件开发的新手。
我想制作一个像SetCPU这样可以在 Android 中操纵 CPU 频率的应用程序。
但是我找不到一些相关的API或材料。
我想真诚地了解以下两件事。
- 是否有 API 可以更改 Android 中的 CPU 频率?
- 如果没有,Linux 中是否有一些 API?
ADB 中的一些命令
设置州长:
adb shell echo "userspace" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
以 KHz 为单位设置频率:
adb shell su -c "echo "702000" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed"
//min frequency
adb shell su -c "echo "384000" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq"
//MAX frequency
adb shell su -c "echo "384000" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq"
获取当前 CPU 频率:
adb shell cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq
显示可用的州长:
adb shell su -c "cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors"
禁用覆盖 cpu 在线文件的服务:
adb shell su -c "stop mpdecision"
在启用或禁用核心之前有必要这样做。如果系统重新启动,则重新启动 mp 决定。
禁用核心:
adb shell su -c "echo "0" > /sys/devices/system/cpu/cpu3/online"
如果这不起作用:
& chmod 444 /sys/devices/system/cpu/cpu1/online
没有 Java API 可以更改 Android 设备的频率。做到这一点的唯一方法是用内核弄脏你的手。
看起来你需要root你的设备