Wie lassen sich zwei Versionen einer App installieren?

Android Market hat gerade eine App auf meinem Gerät aktualisiert. Ich mochte das Update, aber es unterscheidet sich völlig von der letzten Version, die auch mein Favorit war. Also möchte ich auch die letzte Version behalten. Dank Titanium Backup habe ich die APK der letzten Version. Aber ich kann es nicht installieren, ohne das aktuelle zu ersetzen (Android-Architektur ist scheiße). Gibt es eine Möglichkeit, dies zu tun? Hacks usw.
Hinweis: Ich möchte die aktuelle Version behalten, die mit Market verbunden sein muss, um zukünftige Updates zu erhalten.

Antworten (5)

Es ist machbar, aber aus den von Eldarerathis erwähnten Gründen nicht einfach . Sie benötigen apktool . Informationen zur Verwendung finden Sie in dieser Anleitung. Und dies beim Signieren der apk, nachdem Sie fertig sind.

Sie müssen die Datei AndroidManifest.xml ändern. Suchen Sie die Zeile, die so aussieht:

manifest package="com.example.app"

und ändern Sie es in etwas wie:

"com.example.app.foo"

Wenn Sie fertig sind, kompilieren Sie neu und kündigen Sie. Um Ihre Daten wiederherzustellen, versuchen Sie Folgendes über adb:

adb rm /data/data/com.example.app.foo
adb push /data/data/com.example.app /data/data/com.example.app.foo

Wo com.example.appist der Paketname des Originals und com.example.app.fooder geänderte.

Es besteht immer eine geringe Chance, dass die App kaputt geht, oder abhängig von der Art und Weise, wie die App strukturiert ist, erhalten Sie möglicherweise jedes Mal, wenn Sie den Bildschirm wechseln, einen Dialog, in dem Sie aufgefordert werden, die App auszuwählen, die Sie starten möchten, aber es ist auf jeden Fall einen Versuch wert, wenn Sie es tun will es stark genug.

Natürlich teilen sich die beiden Apps nicht die gleichen Einstellungen und Daten.

Großartig ... Ich glaube nicht, dass es rechtliche Probleme geben würde, da ich es nicht verteilen/verkaufen werde. Danke!
Es hängt von Ihrem Land ab. In Ungarn ist es legal, eine App für Lern-/persönliche Zwecke zurückzuentwickeln, aber ich weiß nichts über den Rest der Welt. Aber da Sie nichts verteilen, werden Sie keinen Ärger bekommen.

Du kannst das nicht. Jede Android-Anwendung hat einen Paketnamen, der effektiv den Java/Dalvik-Namespace definiert, den ihre Klassen belegen. Sie können nicht zwei Pakete mit demselben Namen installieren, da dies zu überlappenden Namensräumen führen würde, weshalb es immer das alte ersetzt, wenn Sie ein neues installieren. Die einzige Möglichkeit, dies zu tun, besteht darin, die Quelle für die App abzurufen und alle Paketdefinitionen zu ändern.

Mach es mit in 5 Minuten

Methode : Ändern Sie den Paketnamen, damit Android ihn als eine andere App erkennt.

Kein APKtool, kein Adb, keine Superuser-Fähigkeiten erforderlich.

Werkzeuge benötigt

  • PC mit JAVA (Windows, Linux, Mac) (JDK 8 bevorzugt)
  • ApkUmbenennen

Schritte

  1. Eine Kopie der gewünschten App sichern/herunterladen ( app.APK)
  2. Auf PC übertragen
  3. Laden Sie auf dem PC JAVA und ApkRename herunter
  4. Ändern Sie den Paketnamen, indem Sie den Pfad zur APK-Datei und den neuen Paketnamen in ApkRename angeben
  5. Signieren Sie das APK mit ApkSign
  6. Übertragen Sie die neue APK auf das Telefon und installieren Sie sie.

HINWEIS: Falls Sie Schwierigkeiten beim Signieren der APK haben, verwenden Sie die Android-APK-Editor-App wie Advanced permission managerund nehmen Sie Änderungen vor, drücken Sie auf Speichern und installieren. Zu diesem Zeitpunkt werden sie die App signieren.

Sie könnten versuchen, die Anwendung neu zu verpacken. Ich habe einmal eine bearbeitete Version eines Spiels installiert und das Ergebnis waren zwei Spiele. Wenn Sie sich gut erinnern, waren die Paketnamen nicht gleich.

Manchmal gibt es einige Referenzen in der ausführbaren Bibliothek ( .so), und das Ändern des Paketnamens (auch smali -> classes.dex) hilft auch nicht.

Suchen Sie in einfachen Fällen nach ApkEditor .

Dies ist ein guter Anfang, erklärt aber nicht, welche Änderungen Sie in ApkEditor vornehmen müssen. Wenn Sie möchten, dass Ihre Antwort hilfreich ist, möchten Sie sie möglicherweise bearbeiten, um ein paar weitere Informationen hinzuzufügen.