Ich habe eine App X in Version Y auf meinem Gerät installiert. Ich möchte sie aus irgendeinem Grund nicht auf eine neuere Version (Y+z) aktualisieren. Trotzdem listet die Google Play Store App immer Updates für X auf, was mich von einem einfachen "Alle aktualisieren" abhält. Meine Frage in einem Satz zusammengefasst:
Wie verstecke ich Updates für X dauerhaft aus der Liste "verfügbare Updates"?
Erstens weiß ich, dass es Alternativen wie zB die AppBrain Market App gibt, die damit ganz gut umgehen können (dieses Update überspringen, alle zukünftigen Updates überspringen). Ich bevorzuge eine "generische Lösung", die nicht von der Markt-App eines Drittanbieters abhängt .
Zweitens weiß ich, dass Titanium Backup einen „Market Doctor“ enthält, mit dem eine App von Google Play getrennt werden kann . 1 In meinem speziellen Fall hat das jedoch nur für ein paar Stunden funktioniert: Ich habe GTalk getrennt , da ich nicht möchte, dass es durch Hangouts ersetzt wird . Die Update-Benachrichtigung verschwand für ein paar Stunden, dann war sie wieder da. Keine Ahnung, was den "Link" wiederhergestellt hat.
Drittens, nur um sicherzugehen: Ich spreche nicht von der Funktion „Auto-Update“, wie sie z. B. in Wie aktiviere ich das automatische Play Store-Update für nur wenige Apps? . Ich hatte eher auf etwas in der Nähe von Stellt der Google Play Store keine Updates für eingefrorene Apps? , aber ohne die betreffende App (die ich weiterhin verwenden möchte, aber in der installierten Version, nicht in einer "zukünftigen Version" verfügbar) "einzufrieren".
Viertens: Nein, die betreffende App zu deinstallieren ist hier keine Option, würde aber zukünftige Updates perfekt vor der Anzeige verbergen :) Auch das "Einfrieren", da die App regelmäßig verwendet wird.
Fünftens: Es gibt eine verwandte Frage für mein GTalk-Beispiel: Werden Apps, die in der gApps-Zip enthalten sind, über Google Play aktualisiert? Allerdings will ich das Gegenteil: Kein Update.
Es kann sehr gut sein, dass „Google Apps“ (und andere vorinstallierte Apps) auf eine bestimmte Weise gehandhabt werden und ihre „Marktverbindungen“ selbst irgendwie wiederherstellen. Für diesen Fall lautet meine Frage: Wie kann dies verhindert werden?
Es gibt einen Thread bei XDA , in dem genau das gleiche Problem diskutiert wird. Bis vor kurzem bestand eine Problemumgehung für „vom Benutzer installierte Apps“ darin, sie zu deinstallieren und dann von der Seite zu laden .apk
– aber selbst das funktionierte nicht mehr. Nun, das erneute Signieren .apk
mit einem anderen Schlüssel könnte für Benutzer-Apps funktionieren. Aber beide würden für vorinstallierte Apps fehlschlagen (kann sie nicht seitlich laden, um sie zu überschreiben; eine andere Signatur würde diese Installation vollständig ablehnen).
Darüber hinaus gibt es ein Problem, das von einigen "joel.bou ..." eingereicht wurde. Nicht schwer zu erraten, aber ausgeblendet: Das wäre Joël Bourquard. Wenn er es wirklich ist, dann ist das wirklich ein Problem (für diejenigen, die es nicht wissen: Joël ist der Entwickler hinter Titanium Backup ). Lassen Sie mich aus dem Problem zitieren:
Fürs Protokoll: In den Tagen des Android Market war es möglich, Apps (auf gerooteten Geräten) mit einem Systemtool wie Titanium Backup zu „anhängen“ oder „zu trennen“. Aber heutzutage (mit der Google Play Store App) ist dies fast unmöglich geworden, weil die komplette App-Liste scheinbar von Googles Servern synchronisiert wird und der Benutzer keine Kontrolle darüber hat.
Das erklärt, warum das Trennen mit Apps wie Titanium Backup nicht mehr dauerhaft ist. Und ich fürchte, ich habe das Unmögliche verlangt. Aber ich habe in der Vergangenheit bei anderen Fragen genauso gedacht und hier überraschend Lösungen bekommen. Ich gebe die Hoffnung also noch nicht auf!
1: was das bewirkt, wird von eldarerathis in diesem Beitrag erklärt (danke an Firelord für das Ausgraben!)
Hinweise :
Die Lösung von Craig ist eigentlich ganz gut, und wenn es irgendwie mit Tasker ausgeführt werden kann (das benutzerdefinierte Widget) , dann würde alles sehr glatt laufen.
Die Antwort von Anan kann auch pm disable <PKG>
in Tasker verwendet werden, aber man kann diese Lieblings-App nicht verwenden, solange der Play Store die Liste aktualisiert, was einige Benutzer nicht bevorzugen würden.
Und ich habe Changelog Droid noch nie ausprobiert , kann also nichts dazu sagen.
Aber ich habe eine andere Möglichkeit, die Dinge zu erledigen, nicht so sauber in der GUI, aber gut. Auf geht's:
Play Store hat seine Datenbanken unter /data/data/com.android.vending/databases/
. Es gibt drei Datenbanken, die eine Überlegung wert sind, nämlich. library.db
, localappstate.db
, package_verification.db
.
library.db
-- Es hat eine Tabelle mit dem Namen ownership
, die die Apps auflistet, die Sie jemals aus dem Play Store installiert haben, mit allen ihnen zugeordneten Google Play Store-Konten. Beachten Sie , dass immer auch die Apps enthalten sind, die Sie vor langer Zeit einmal aus dem Play Store installiert und später deinstalliert haben.localappstate.db
-- Dies hat eine Tabelle mit dem Namen appstate
, die alle derzeit auf Ihrem Gerät installierten Benutzer-Apps auflistet. Die aus dem Play Store installierten zeigen auch den Titel der App an, die von der Seite geladenen jedoch nicht.package_verification.db
-- Diese Datenbank wird angezeigt, wenn Sie "Apps verifizieren" unter "Einstellungen" von Android aktiviert haben. Es hat eine Tabelle namens verification_cache
mit einer Liste von Apps zur Überprüfung.suggestions.db
-- hier nicht relevant, aber es gibt eine Tabelle namens suggestions
mit einer Liste aller Suchanfragen (Schlüsselwörter), die Sie mit der Play Store-Suchleiste durchgeführt haben.Beachten Sie , dass ich keine Quelle habe, um meine Behauptung zu untermauern, es sind hier alles persönliche Erfahrungen. Sie werden ermutigt, (mit Beweisen) nicht zuzustimmen, damit die Qualität dieser Antwort weiter verbessert werden kann.
Nun zurück zur Frage. Auf meinem Lollipop konnte ich 37 Apps aus der Update-Liste entfernen und beließ nur eine App, für die ich „Alle aktualisieren“ verwendet habe, um die Lösung weiter zu testen. Es hat perfekt funktioniert!
Erzwingen Sie das Schließen des Play Store , um Datenbeschädigungen zu vermeiden, da wir seine Datenbank bearbeiten müssen.
Entfernen Sie den Besitz Ihrer App vonlibrary.db
: I've used sqlite3
(verwenden Sie das SQLite-Installationsprogramm für Root , wenn Sie es nicht haben). Ich habe eine sehr einfache Abfrage verwendet, die einen Datensatz (Zeile) aus der Datenbank löscht, indem die Zeile anhand eines Werts identifiziert wird. Um die weitere Verwendung zu erfahren, sqlite3
verwenden Sie diese Ressource .
Der allgemeine Befehl zum Entfernen des Eigentums wäre:
sqlite3 /data/data/com.android.vending/databases/library.db "DELETE from ownership where doc_id='<PKG_NAME>'"
Ersetzen Sie <PKG_name>
durch den Paketnamen Ihrer App. Für den Chrome-Browser lautet der Paketname beispielsweise com.android.chrome
.
Sie können den Paketnamen Ihrer App mit App Browser oder OS Monitor finden oder sich einfach auf die Frage beziehen: Vollständigen Paketnamen der App anzeigen?
Entfernen Sie die weiteren Details der App aus localappstate.db
undpackage_verification.db
: Beachten Sie , dass die obigen beiden Schritte auf meinen Geräten funktioniert haben. Da ich aus keinem Grund möchte, dass die App in der Update-Liste auftaucht, habe ich alle Details aus allen oben genannten Datenbanken gelöscht.
Der allgemeine Befehl zum Entfernen der Informationen localappstate.db
wäre:
sqlite3 /data/data/com.android.vending/databases/localappstate.db "DELETE from appstate where package_name='<PKG_NAME>'"
Und für package_verification.db
wäre es:
sqlite3 /data/data/com.android.vending/databases/package_verification.db "DELETE from verification_cache where package_name='PKG_NAME'"
adb shell
, oder adb pull
die Datenbanken, und bearbeiten Sie sie auf dem PC mit einer SQLite-Software (wie DB Browser für SQLite ) .Die App wird zwar nicht in der Liste der installierten Apps oder Updates angezeigt, aber sie wird definitiv unter „Alle“ unter „Meine Apps“ im Play Store angezeigt . Ich benutze diesen Store nicht viel, also habe ich andere Einstellungen davon nicht weiter getestet.
Darüber hinaus können Sie feststellen, dass, wenn Sie früher unter den Play Store- Einstellungen das Häkchen bei „App-Updates verfügbar“ hatten und Sie es nach dem Ausführen der genannten Befehle aktivieren, eine Synchronisierung ausgelöst wird und Ihre Änderungen, wie offensichtlich, verloren gehen würden.
Beachten Sie auch, dass Google alle Informationen auf seinen Servern speichert. Früher oder später werden also die Datenbanken aktualisiert. In meinem Lollipop-Gerät habe ich ungefähr 24 Stunden gewartet und keine Änderungen in den Datenbanken gesehen, sondern YMMV.
Es ist eine Theorie und ich werde nicht behaupten, dass es funktionieren würde, aber Sie können es versuchen:
adb backup
Play Store entfernen .Packen Sie die geänderten Dateien in eine neue Sicherungsdatei und stellen Sie sie auf dem Gerät wieder her.
Wenn Sie nicht wissen, wie Sie ein ADB-Backup auf dem PC entpacken und packen, dann werfen Sie einen Blick auf Android Backup Extractor (ABE) (es benötigt Java Runtime Environment und hat es zur Verwendung), der die Datei in eine README.txt
entpacken würde , die Sie dann extrahieren können mit einem Archivierer wie Ark, 7zip, WinRAR und mehr..ab
.tar
Sie können DB Browser for SQLite verwenden , um Änderungen an den Datenbanken vorzunehmen, die sich (wahrscheinlich) im extrahierten Inhalt befinden apps/com.android.vending/db/
.
Sie können sich auch Beiträge zu Android-Backups wie this , this und Adebar ansehen – alle von Izzy vorgeschlagen .
Prüfen Sie, ob die App aus der Update-Liste verschwunden ist.
Nun, ich bin nicht der einzige, der es so herausgefunden hat:
library.db
es der Hauptschuldige istab2tar
in Adebar ;)adb restore
meine Geräte werden bei jeder App-Wiederherstellung abrupt beendet, sodass ich meine eigene Theorie nicht wirklich testen kann. :/Dies ist auch bei einigen Apps ein Problem für mich, insbesondere bei einer Taschenlampen-App, bei der die neueste Version nicht gut mit Lollipop funktioniert, die vorherige Version jedoch.
Meine Lösung dafür war in der Vergangenheit die Verwendung von Change Droid, aber wie oben erwähnt, kann es zurückkehren, wenn Sie den Play Store öffnen.
Derzeit verwende ich die Lösung, eine geplante Aufgabe von Titanium Back up auszuführen, um die App vom Markt zu trennen. Ich laufe das derzeit 4 mal am Tag. Es läuft zur geplanten Zeit im Hintergrund und wenn ich im Play Store nach Updates suche, ist es nicht da.
Ich muss es mir ansehen, aber es könnte / sollte eine Möglichkeit geben, die Aufgabe auszuführen, wenn der Play Store geöffnet ist ... nicht sicher.
----Bearbeiten---- Einige haben nach mehr Details zur TB-Einstellung gefragt ...
Zuerst müssen Sie einen Filter erstellen und nur die Apps auswählen, die Sie trennen möchten. Sie erreichen diese unter dem Menü. Sie fügen die "Elemente" oder Apps zum Filter hinzu, sodass nur die ausgewählten Apps betroffen sind. Stellen Sie sicher, dass Sie die Trennung nicht ausführen, wenn alles ausgewählt ist und kein Filter angewendet wird :)
Als nächstes müssen Sie den Zeitplan mit dem auf den Zeitplan angewendeten Filter erstellen.
Wie Sie sehen können, ist dies nur für eine geplante Veranstaltung ms um 4 Uhr morgens
Wenn es fertig ist, sieht Ihre geplante Aufgabe in etwa so aus
Sie müssen dies wiederholen und die Zeit ändern, je nachdem, wie oft es geschehen soll.
Ich habe meine auf 4 Uhr morgens, 8 Uhr Mittags und 16 Uhr eingestellt. Scheint bei mir zu funktionieren.
Hoffe das macht es etwas klarer. Wenn Sie TB umgehen, bin ich mir sicher, dass Sie es mit diesen Screenies herausfinden können.
Craig
Mit folgender Lösung:
Es gibt eine kostenlose App namens Changelog Droid (früher war dies eine Freemium-App, jetzt hat sie die volle Funktionalität kostenlos). Dadurch können Sie Updates Ihrer anderen Apps verwalten und als Vermittler zu Google Play fungieren.
Der Vorteil ist, dass Sie Apps auf eine schwarze Liste setzen können, ohne Updates vorübergehend oder "dauerhaft" (bis Sie Ihre Meinung ändern) anzuzeigen. Sie können auch Updates für Anwendungen verfolgen, die Sie deinstalliert haben oder die Sie noch nie installiert haben, aber beobachten möchten. Ich begleite diese Antwort mit einigen Screenshots (die die unterschiedliche Bildschirmnavigation mit Farben identifizieren), damit Sie erkennen können, wie es funktioniert.
Der einzige Nachteil ist, dass beim Öffnen des Play Store entweder direkt oder über diese App alle Apps angezeigt werden (einschließlich derer, die Sie nicht aktualisieren wollten, da diejenige, die den Filter anwendet, Changelog Droid und nicht Google Play selbst ist. das war zu erwarten)
Aber in Changelog Droid können Sie mit einer Schaltfläche auf jede App bei Google Play zugreifen und sie dann einzeln aktualisieren.
Entschuldigung: Es gibt derzeit keine Möglichkeit, alle zugelassenen Anwendungen in einem einzigen Schritt von Changelog Droid aus zu aktualisieren, aber vielleicht könnte der Entwickler dies irgendwann implementieren.
Hinweis: Ich habe das von Ihnen beschriebene Szenario noch nicht getestet (ich habe Talk/Hangouts bereits aktualisiert/ersetzt), aber es könnte in Ihrem Fall funktionieren. Denken Sie nur daran, die Ansicht „ Meine Apps “ von Google Play nicht zu öffnen , damit keine automatische Aktualisierung von Apps ausgelöst wird.
Deaktivieren Sie die App in den Haupteinstellungen der App oder im App-Manager und öffnen Sie den Play Store, und die App sollte nicht aufgeführt werden. Aktualisieren Sie alle und aktivieren Sie die App einfach erneut, wenn die Aktualisierung abgeschlossen ist. Ich habe das gleiche Problem, eine TXT-Nachrichten-App, bei der ich hässliche Anzeigen bekomme, wenn ich sie aktualisiere. Dies ist meine Lösung
Ich weiß, das ist ein alter Thread. Und ich verstehe, dass Ti Backup früher funktioniert hat, um eine App vom Play Store zu trennen. Aber ich verstehe auch, dass das nicht mehr funktioniert. Für diejenigen, die daran interessiert sind, habe ich eine App erstellt, die das ziemlich gut macht. Es heißt Hide Updates In Play Store und ist für ~1 USD erhältlich. Es gibt ein Video, das die App bei der Arbeit zeigt. Es erfordert Root.
Die Lösung, die ich für Root-Benutzer gefunden habe, besteht darin, die apk ( /data/app/
nach der Sicherung in oder Ihrem TitaniumBackup-Ordner gefunden) einfach mit ZipSigner neu zu signieren und neu zu installieren.
Ich habe versucht, die App "Permission Manager" zu verwenden (muss gerootet sein, denke ich). Ich deaktiviere eine Berechtigung, die für die App, die ich nicht aktualisieren möchte, nicht wichtig ist (z. B. deaktivierte Vibrationsberechtigung im ES File Explorer und Wakelock in Quickpic). Permission Manager kompiliert die App neu, deinstalliert das Original und installiert die neu kompilierte App neu. Nachdem ich dies getan hatte, öffnete ich den Play Store und die Update-Erinnerung war weg.
.apk
(und ja, es gibt mehrere solcher Apps: Für Apps, die Sie selbst installiert haben, brauchen Sie wahrscheinlich kein Root, aber um an System-Apps zu arbeiten, würden Sie es tun). Ich würde das als Problemumgehung bezeichnen, aber es ist kein Ansatz, den ich wählen würde. Danke trotzdem!Ein weiterer Kandidat tauchte gerade am Horizont auf. Ich habe es noch nicht getestet, aber es klingt sehr vielversprechend: StorePrefs .
Da es sich um ein Xposed - Modul handelt, sollte es in der Lage sein, die Mängel der anderen Lösungen, die wir bisher hatten, zu umgehen:
adb shell
.apk
DateienDa ich meine Geräte de-gegoogelt habe und die Playstore-App nicht mehr verwende, kann ich das nicht überprüfen – also Feedback von denen, die es können, ist willkommen :)
Wie Titanium Backup können Sie auch die Verknüpfung der App mit dem Google Play Store mit 3C Toolbox aufheben . Dies scheint bis jetzt dauerhaft zu sein. Root erforderlich.
wbogacz
Izzy
Izzy
sqlite*
Binärdatei gegen diese Datenbanken) täglich auszuführen (optional: verknüpfen Sie es mit den Startskripten von init.d). Auf jeden Fall mindestens +1 wert. Danke für den Hinweis – und im Voraus für die Antwort :)Feuerlord
eldarerathis ♦
hat hier erklärt, was das "vom Markt lösen" in TiBa eigentlich macht (Bearbeitunglocalappstate.db
). Vielleicht möchten Sie den Link dieser Antwort zu Ihrer Frage hinzufügen.Izzy
Feuerlord
Izzy
Deqing
Play Store -> My Apps -> menu -> disable Auto Update
. Sie werden die App immer noch in der Liste „Verfügbare Updates“ sehen, aber es ist in Ordnung, auf „Alle aktualisieren“ zu klicken, da Sie gefragt werden, ob Sie diese App aktualisieren möchten oder nicht. Es stört mich nicht, da ich nur verhindern muss, dass diese App aktualisiert wird.TJJ