Hy, mientras que la construcción de una aplicación para android 2.3.3 tengo el siguiente error:

Traté de acceder a los archivos:

private static final String src_msg = "/data/data/com.whatsapp/databases/msgstore.db";
private static final String src_wa = "/data/data/com.whatsapp/databases/wa.db";

Hago antes de su:

Process process = Runtime.getRuntime().exec("su");

He intentado copiar los archivos a la sdcard a través de comando cp -> no hay éxito
He intentado comprobar si el archivo existe a través de new File(src_msg).exists() -> no hay éxito

Yo uso los siguientes permisos en el manifiesto:

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

¿qué más falta aquí? la ventana emergente para permitir que la raíz viene y ha sido aceptado.

InformationsquelleAutor user1654852 | 2012-09-07

1 Comentario

  1. 1

    Pruebe que: (Gracias a ramdroid )

    private boolean run(boolean runAsRoot, String cmd) {
    
    String shell = runAsRoot ? "su" : "sh";
    
    int exitCode = 255;
    Process p;
    try {
    
        p = Runtime.getRuntime().exec(shell);
        DataOutputStream os = new DataOutputStream(p.getOutputStream());
    
        os.writeBytes(cmd + "\n");
        os.flush();
    
        os.writeBytes("exit\n");
        os.flush();
    
        exitCode = p.waitFor();
    
    } catch (IOException e1) {
            Log.e("Exception", e1.toString());
    } catch (InterruptedException e) {
            Log.e("Exception", e.toString());
    }
    return (exitCode != 255);

    }

    public boolean copyFile() {
    return run(true, "busybox cp /data/FILE TO COPY space DRECTORY TO COPY");
    } 

    Cambio sólo YOUR_DIRECTORY DIRECTORIO y COPYto los necesarios.

    • usted acaba de copiar y pegar la respuesta, y su comando cp es hecho mal
    • Sabes que tienes que copiar a un directorio de su propio derecho? Milos no sabe en qué directorio te quieren por lo que dejó que fuera parte.
    • sí, por eso dije thankd a ramdroid.No sé el directorio en el que le gustaría usar, esta parte debe ser personalizado.
    • tienes razón
    • no hacer que el comando de la derecha no? al responder a una pregunta que usted no sabe todo acerca de OP de la situación, de salir de código de la plantilla, pero al menos debe ser un código válido.
    • He editado mi respuesta, está bien ahora?
    • Nope! ver cómo ramdroid lo hizo, el primero es el archivo que desea copiar space y, a continuación, el directorio en el que se copia…. cual es la razón por la que no debería de haber copiado la respuesta en el 1er lugar.
    • Este fue el de SU DIRECTORIO, pero bueno, he reeditado mi respuesta, feliz ahora ? 🙂

Dejar respuesta

Please enter your comment!
Please enter your name here