Abrufen einer APK-Datei einer kostenpflichtigen App vom Gerät

Ich habe die .apk-Dateien mit dem folgenden Befehl vom Gerät gezogen:

./adb pull /data/app/com.example.tracker-1.apk

Als ich versuchte, denselben Befehl für die verschlüsselte App wie unten zu verwenden:

./adb pull /mnt/asec/net.stfj.spelltower-1/pkg.apk 

Ich bekomme folgende Meldung

failed to copy '/mnt/asec/net.stfj.spelltower-1/pkg.apk' to './pkg.apk': Permission denied

Das Gerät ist nicht gerootet und die App ist eine kostenpflichtige App. Die Absicht des Pullens ist nicht Piraterie, sondern das Verständnis der Bibliothek und Architektur einer Reihe von Apps. Gibt es eine Möglichkeit, diese .apk-Datei abzurufen?

Antworten (3)

Sie können keine "geschützte App" ohne Root abrufen, tut mir leid.

Das hat nichts damit zu tun, dass die App bezahlt wird, außer dass normalerweise nur kostenpflichtige Apps „geschützt“ werden (theoretisch könnten auch kostenlose Apps „geschützt“ werden); Betrachten Sie es eher als eine Art "DRM".

Sobald Ihr Gerät gerootet ist, können Sie „Root Powers“ verwenden, um diese Dateien abzurufen .apk. Dies kann entweder mit einer spezialisierten App (z. B. AppMonster ) oder über erfolgen, adb pullwenn der ADB-Daemon im Root-Modus ausgeführt wird (normalerweise nicht, aber dies kann mit adbd Insecure erreicht werden ). adb rootfunktioniert normalerweise nicht auf "Produktionsgeräten", daher müssen Sie diesen anderen Ansatz verwenden.

Wenn das Gerät also gerootet ist, wird es die übliche Art sein, auf die .apk zuzugreifen? Sagen Sie: ./adb pull /mnt/asec/net.stfj.spelltower-1/pkg.apk oder muss ich ein Superuser in der Shell sein, um die Daten zu ziehen. Es wird großartig sein, wenn jemand die Schritte haben kann, um dies zu erreichen. Ich habe mich durch viele Foren gelesen. Gemeinsame Linien, die ich sehen würde, sind gerootetes Gerät, Adb-Shell-Superuser, Adb-Root
Bitte klicken Sie auf das Häkchen neben der Antwort, wenn Sie sie zählen :) Dies und "Upvoting" (was Sie tun können, sobald Sie ein wenig mehr Repräsentanten haben) sind die Möglichkeiten von StackExchange, "Danke" zu sagen. Ich werde in der Zwischenzeit meine Antwort mit den angeforderten Details aktualisieren.
+1 für die Antwort, aber gibt es rechtliche Unklarheiten beim Abrufen von APK-Dateien von kostenpflichtigen Apps? Ich nehme an, nicht, aber jede Verbreitung wäre illegal, oder?
@RossC Genau. Solange Sie sie "zur Sicherung" ziehen, aber für sich behalten, sollte kein Rechtsanspruch möglich sein. Der „Schutz“ zielt eher darauf ab, das „Teilen“ zu verhindern: Wenn Sie die Datei nicht bekommen können, können Sie sie nicht teilen.

Wenn Sie nicht speziell mit spielen möchten adb, können Sie eine dieser beiden zu 100 % getesteten Problemumgehungen verwenden (jede erfordert jedoch die Installation einer anderen App).


Ansatz_1: (benötigt ein gerootetes Gadget)


  • Laden Sie eine Sicherungs-/Wiederherstellungs-App herunter und installieren Sie sie (wie Titanium Backup oder AppMonster; kostenlose Versionen reichen vollkommen);
  • sichern Sie die App, die Sie benötigen;
  • Navigieren Sie zum /sdcard/TitaniumBackup-Verzeichnis (im Falle von AppMonster müssen Sie in die Einstellungen von AppMonster schauen, um das Sicherungsdatenverzeichnis zu sehen) und holen Sie sich Ihre APK von dort

Ansatz_2:


  • Busybox installieren (im Falle von werkseitig gerooteten Geräten --- auf sogenannten Entwicklertelefonen/Tablets --- ist es bereits vorhanden)
  • Laden Sie einen Terminal-Emulator herunter und installieren Sie ihn (z. B. Terminal Emulator von Jack Palevich).
  • Führen Sie es aus und geben Sie Folgendes ein (verwenden Sie nicht $ oder #; es handelt sich lediglich um Shell-Eingabeaufforderungen für Ihre Bequemlichkeit; ersetzen Sie wished_app_name.apk durch den echten APK-Namen, den Sie aufgelistet sehen, nachdem Sie den Befehl „ls“ ausgeführt haben):

    $cd data/app
    $su
    #ls
    #cat desired_app_name.apk > /sdcard/Download/desired_app_name.apk
    #exit
    $exit
    
  • Holen Sie sich Ihre APK aus dem Download-Verzeichnis (natürlich können Sie ein anderes uneingeschränktes Verzeichnis verwenden)

Es spielt keine Rolle, über welche Apps wir sprechen, kostenlos oder kostenpflichtig.

Sie müssen Ihr Telefon rooten, um Zugriff auf /mnt zu erhalten