私は本当にすべてを試しました:
- NetHackFileHelpers
- Java でプログラムによってファイル許可モードを取得する方法
- アプリケーションでファイルのパーミッションを変更する
- 読み取り専用ファイルを編集するために Android アプリケーションに R/W システムをマウントする
ここで、root として再マウントしたためRW
、ファイル システム (Android バージョン 2.3.7) に対するアクセス許可を取得したとします。
Process process = Runtime.getRuntime().exec("su");
DataOutputStream os = new DataOutputStream(process.getOutputStream());
os.writeBytes("chmod -c 0777 /system/etc/customization/settings/com/android/browser/custom_settings.xml\n");
os.writeBytes("exit\n");
os.flush();
process.waitFor();
また:
Process process = Runtime.getRuntime().exec("su -c \"/system/etc/customization/settings/com/android/browser/custom_settings.xml\"");
また:
Class<?> fileUtils = Class.forName("android.os.FileUtils");
Method setPermissions =
fileUtils.getMethod("setPermissions", String.class, int.class, int.class, int.class);
int a = (Integer) setPermissions.invoke(null, "/system/etc/customization/settings/com/android/browser/custom_settings.xml", 0777, -1, -1);
動作は同じで、何も起こりません。chmod
一方、adb shell からのIは正常に動作します。コード内からそのファイルのアクセス許可を変更するにはどうすればよいですか?