SQLite
 sql >> Base de Dados >  >> RDS >> SQLite

chmod falhou:EPERM (Operação não permitida) no android?


Acabei de resolver este problema.

Você precisa permitir que seu aplicativo se junte ao linux build para conceder a permissão SYSTEM.

  1. adicione esta linha em Android.mk

    LOCAL_CERTIFICATE := platform

  2. adicione isso no nó do manifesto de AndroidManifest.xml

    android:sharedUserId="android.uid.system"

  3. Gere o apk e envie-o para /system/app/

  4. Agora você pode tentar executar
    final String command = "chmod 777 /data/ena";
    Process p = Runtime.getRuntime().exec(command);
    

    ou
    File file = new File("/data/ena");
    if (file.exists()) {
        boolean result = file.setExecutable(true);
        Log.e(TAG, "trpb67, RESULT IS " + result);
    }
    

    valor do resultado deve ser verdadeiro