1

ルート化された電話の最小/最大クロック速度をプログラムで設定しようとしています。この質問への回答で行われた提案に続いて、データを書き込むことを示唆するドキュメントをいくつか見つけました。

/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq

/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq

私は既に持っています

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

私のマニフェストで。また、両方のファイルを正常に読み取ることができます。ファイルに書き込もうとすると、open failed: EACCES (Permission denied). だから私は試しました...

Runtime.getRuntime().exec("su -c \"chmod 777 /sys/devices/system/cpu/cpu0/cpufreq/*\"");

...エラーなしで実行されましたが、違いはありませんでした。次の 2 行のうち 2 行目を実行すると、エラーが発生します。

File file = new File("/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq");
BufferedWriter bw = new BufferedWriter(new FileWriter(file));  

次に何を試せるかわかりません。

編集: mrPjer のアドバイスに従って、adb shell を実行しました。入力suすると、に移動しました/sys/devices/system/cpu/cpu0/cpufreq。次に入力しました

chmod 777 scaling_max_freq

入力して許可が受け入れられたことを確認しました

ls -l scaling_max_freq

確かに、それは としてリストされていまし-rwxrwxrwxた。次に入力しました

echo 124200 > scaling_max_freq

その後

cat scaling_max_freq

悲しいことに、これはファイルが「1512000」として変更されていないことを報告しました。

編集:この質問は元のタイトルから多少ずれているため、最後の編集を完全に新しい質問として投稿します。

4

1 に答える 1