私はカスタムROMを構築し、そのビルドのプラットフォームキーを取得しました。今私は、プラットフォームキーで署名されたシステムアプリケーションを作成しています。プラットフォーム署名付きのアプリケーションに署名した後、どのようなアクセス権を得ることができますか?
ここでは、アプリケーションをsystem/priv-appフォルダに書き込むようにしたいと考えています。根っこの電話機でスーパーユーザーアクセスでアプリケーションを実行すると、コードが機能します。
しかし、プラットフォームの鍵で署名されたアプリケーションでは、このようなアクセスが可能ですか?
私は次のことを試してみました:
public class MainActivity extends AppCompatActivity {
private static final String DEBUG_TAG = "MainActivity";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
try {
Log.i(DEBUG_TAG, "Here");
Process process = Runtime.getRuntime().exec("chmod 777 /system/priv-app");
DataOutputStream dataOutputStream = new DataOutputStream(process.getOutputStream());
dataOutputStream.writeBytes("touch /system/priv-app/foo.txt\n");
dataOutputStream.flush();
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
StringBuilder stringBuilder = new StringBuilder();
String line;
while ((line = reader.readLine())!= null) {
stringBuilder.append(line + "\n");
}
Log.i(DEBUG_TAG, stringBuilder.toString());
} catch (Exception e) {
e.printStackTrace();
Log.i(DEBUG_TAG, "IO Error");
}
}
}
私がいなくても、エラーはなく、ファイルをディレクトリに作成されていない、私のアプリケーションでランタイムから任意の出力を得ることはありません。
実装エラーがありますか、そのようなアクセスはできませんか?
私の質問は実際には、私はプラットフォームキーで署名されたアプリケーションからルートアクセスを取得しますか?以前にsuコマンドを使用しなくてもrwを再マウントできますか? – bpncool