2016-11-30 2 views
0

Ich habe folgende smali Code, der eine Binärdatei auf Android mit su ausführt Priviledges:Wie Zitate in einer smali Zeichenfolge zu entkommen

[...] 
    .line 66 
    invoke-static {}, Ljava/lang/Runtime;->getRuntime()Ljava/lang/Runtime; 

    move-result-object v6 

    const-string v7, "su -c /system/bin/screencap -p /data/local/tmp/x.png" 

    invoke-virtual {v6, v7}, Ljava/lang/Runtime;->exec(Ljava/lang/String;)Ljava/lang/Process; 
    [...] 

ich in Anführungszeichen ein Teil der Zeichenfolge festlegen müssen, etwa so:

'su -c "/system/bin/screencap -p /data/local/tmp/x.png"' 

Wie kann ich den Anführungszeichen entkommen? Ich versuchte es mit Backslashes, aber apktool beschwert sich darüber, wenn ich versuche, die APK-Datei neu zu erstellen.

Vielen Dank im Voraus.

+0

Backslashes sind der richtige Weg, um dies zu entkommen. Wenn das nicht für Sie funktioniert, fügen Sie bitte den tatsächlichen Fehler hinzu :) – JesusFreke

Antwort

1

Sie sollten in der Lage sein, die eingebetteten doppelten Anführungszeichen mit einem umgekehrten Schrägstrich zu umgehen, genau wie Java.

const-string v7, "su -c \"/system/bin/screencap -p /data/local/tmp/x.png\"" 
Verwandte Themen