Ist es möglich, eine .apk-Datei neu zu packen, um sie in einer inkompatiblen Android-Version zu installieren? ('beim Parsing des Pakets ist ein Problem aufgetreten'/haben Sie 4.0.4-erfordert 4.1)

Es handelt sich um eine .apk ( Inbox by Gmail ), die Android 4.1 und höher benötigt.
Beim Versuch, es auf meinem Telefon mit Android 4.0.4 zu installieren, wird angezeigt
, dass " there is a problem parsing the package".
Ich habe die Installation von .apk aus Quellen, die nicht aus dem Play Store stammen, auf meinem Telefon aktiviert.

Wie ich gelesen habe, liegt dies daran, dass die .apk eine andere Geräte-API-Ebene als die des Telefons erfordert.

Gibt es eine Möglichkeit, die .apk-Datei zu konvertieren/umzupacken, damit sie auf meinem Telefon installiert werden kann?

Es wäre einfacher, eine neue Version von Android zu flashen, als etwas auf einem älteren Betriebssystem zum Laufen zu bringen.

Antworten (1)

Kurze Antwort: Nein.

Einfaches Umpacken kann das Kompatibilitätsproblem nicht lösen. Wenn für eine App „mindestens Android XX“ erforderlich ist, bedeutet dies normalerweise, dass einige Bedingungen erforderlich sind, die zuvor nicht erfüllt wurden. Mit jeder Android-Version werden neue Betriebssystemfunktionen eingeführt, Bibliotheken erhalten zusätzliche APIs/Funktionen usw. – nichts davon kann durch „Umpacken“ des Installationspakets gelöst werden. Wenn die (erforderliche) Funktionalität von der Android-Version Ihres Geräts nicht bereitgestellt werden kann, kann die App nicht (korrekt) funktionieren – selbst wenn Sie sie installieren konnten.

Während dies für viele Anwendungen zutreffen mag, ist das "Minimum Version"-Flag eine Einstellung, die vom Entwickler auf einen beliebigen Wert gesetzt werden kann. Viele professionelle Apps werden versuchen, ein breites Publikum anzusprechen und so viele Android-Versionen wie möglich zu unterstützen. Aber oft führt die Unterstützung einer alten Version zu zusätzlichen Supportkosten und Tests auf diesen Plattformen, sodass sie das Flag einfach auf "4.0" setzen, selbst wenn die App unter 3.X einwandfrei laufen würde - das Ändern des Flags ist also eine praktikable Option!
Das stimmt auch, @Falco (dem Entwickler steht es grundsätzlich frei, die minimale und maximale API-Ebene so einzustellen, wie er es möchte). Aber selbst dann würde einfaches Umpacken nicht ausreichen. Bitte beachten Sie den Fehler, den das OP enthielt: there is a problem parsing the package- definitiv auf ein "neueres Feature, das angesprochen wird" hinweist, von dem die derzeit verwendete Android-Version nichts weiß (oder natürlich ein kaputtes Paket - in diesem Fall konnte "einfaches Umpacken" dies nicht entweder das Problem lösen).
Ok - ich kenne die genauen Fehlermeldungen des Android-Installers nicht. Ich dachte, der Analysefehler ist eine allgemeine Meldung für "etwas stimmt nicht". - Aber selbst diese Funktionen könnten manchmal nur für bestimmte Teile der Anwendung relevant sein, die das OP vielleicht nicht einmal verwenden möchte, also könnte es ausreichen, das APK zu extrahieren, die Manifest-/Konfigurationsdateien zu ändern und es neu zu packen, was natürlich ist nicht trivial und erfordert Kenntnisse der App und ihrer Funktionen.
@Falco Dem kann ich zustimmen, ja. Aber auf diese Weise riskieren Sie immer, eine „nur teilweise funktionierende App“ zu haben – Sie können nie sagen, was funktioniert und was nicht. Sie riskieren auch erzwungene Schließungen und Datenverlust. Dies ist nichts, was ich dem "Standardbenutzer" oder sogar "Neuling" empfehlen würde - obwohl es eine gültige Option für einen "erfahrenen Benutzer" sein könnte, damit zu spielen und, wenn es funktioniert, das "überarbeitete Paket" zusammen mit anzubieten Hinweise und Warnungen (was manchmal auf XDA gemacht wird). Solch ein "erfahrener Benutzer" würde diese Frage natürlich nicht stellen – weshalb ich das nicht in meine Antwort aufgenommen habe :)
Beachten Sie auch, dass das "Neupacken" die Paketsignatur ungültig machen würde (Sie müssten sie mit Ihrem eigenen Schlüssel signieren) und daher nicht mit einem zuvor installierten Paket "kompatibel" .apkwäre (es würde ein Update verweigern - Sie müssten es zuerst deinstallieren ) oder mit einem späteren „offiziellen Update“, das möglicherweise für Ihre Android-Version verfügbar ist (zugegeben, ein unwahrscheinliches Update – aber es passiert). Wieder nichts, was ein "Neuling" leicht handhaben könnte (zumindest nicht, wenn die Daten aufbewahrt werden sollen).
Nur als Referenz habe ich nur apktool verwendet, um die apk zu decodieren, dann in der apktool.yml-Datei die Zeile minSdkVersion: '16'(Android 4.1) in minSdkVersion: '15'(Android 4.0.3/4.0.4) bearbeitet und sie mit apktool neu erstellt. Dann habe ich es zurück auf das Telefon kopiert und versucht, es zu installieren: Nicht mehr there is a problem parsing the package". Es beginnt mit der Installation, zeigt aber einige Sekunden später „Posteingang – X-Anwendung nicht installiert“ an.
Bestätigt meinen Verdacht :)