Gibt es eine Möglichkeit, die Anwendung auf Android automatisch zu aktualisieren?
Lesezeit: 6 Minuten
Levara
Ich entwickle eine Anwendung, die höchstwahrscheinlich auf Geräten vorinstalliert sein wird. Es wird auch auf Google Play verfügbar sein. Gibt es eine Möglichkeit, diese Instanzen zu aktualisieren, die nicht über Google Play heruntergeladen werden, da Google Play die Benutzer nicht über ein Update benachrichtigt?
Ich habe darüber nachgedacht, wie hier vorgeschlagen, regelmäßig meine Website zu kontaktieren und sie herunterzuladen, wenn ein Update verfügbar ist.
Gibt es eine Möglichkeit, dieses Update automatisch oder sogar im Hintergrund durchzuführen, sodass der Benutzer nichts tun muss (z. B. das manuelle Ausführen des Pakets). Oder, wenn auf meiner Website angezeigt wird, dass ein Update verfügbar ist, um Benutzern ein Update über Google Play anzubieten, obwohl es nicht über Market installiert wurde (BEARBEITEN: Diese Google Play-Option wäre vorzuziehen, da Benutzer dann nicht „Installation zulassen von Nicht-Marktquellen”.)
Vermutlich vorinstalliert, indem Sie für oder mit einem Gerätehersteller oder Netzbetreiber arbeiten.
– Christoph Orr
16. Juni 2010 um 23:36 Uhr
Ja, höchstwahrscheinlich, aber wenn es sich um eine Unternehmensumgebung oder ähnliches handelt, wäre eine Option, die Installation ursprünglich durch Herunterladen vom Markt durchzuführen, anstatt Ihren eigenen Updater verwenden zu müssen.
– Cheryl Simon
17. Juni 2010 um 0:03 Uhr
Es besteht die Möglichkeit, dass Verkäufer es auf ihren Geräten vorinstallieren, aber sie werden es wahrscheinlich nicht über den Market installieren, und ich möchte es den Benutzern ermöglichen, ohne großen Aufwand ein Upgrade durchzuführen …
– Levara
17. Juni 2010 um 1:26 Uhr
Jörgesys
Ich hatte das gleiche Problem, jetzt überprüfe ich beim Start meiner App, ob es eine neue Version in meiner Konfigurations-XML gibt.
Ich vergleiche die aktuelle Version mit dem Tag “< app_version >1.1< /app_version >” meiner configuration.xml, wenn es niedriger ist, frage ich mit einem benutzerdefinierten AlertDialog, ob der Benutzer mit dem Upgrade fortfährt
Intent intent = new Intent(Intent.ACTION_VIEW ,Uri.parse(myapk_link));
startActivity(intent);
Nach dem Download muss der Benutzer das Paket manuell ausführen.
Wenn Sie das Update aus dem Android Market verwenden, verwenden Sie:
Intent intent = new Intent(Intent.ACTION_VIEW ,Uri.parse("market://details?id=com.package.name"));
startActivity(intent);
com.package.name muss das “Paket” Ihrer App sein
oder
Intent intent = new Intent(Intent.ACTION_VIEW ,Uri.parse("market://search?q=" + APP_NAME));
startActivity(intent);
Das war so ziemlich das, was ich im Kopf hatte. Immer noch ein bisschen zu kompliziert für die Benutzer … Danke
– Levara
17. Juni 2010 um 1:27 Uhr
Wie haben Sie mit der GooglePlay-Version verglichen? Mann, es wird geschätzt
– Ahmad Arslan
24. Juni 2014 um 13:12 Uhr
Was ich tue, ist, die neueste Version im Internet zu haben, zum Beispiel yourdomain.com/lastversion.txt. Wenn die App startet, führt sie ein HTTP-Get zu der URL durch, wo die neueste Version notiert ist, und vergleicht sie mit der App-Version. Wenn die Remote-Version höher ist, starte ich die Absicht. Nachdem Ihre Version von Google Play genehmigt wurde, aktualisiere ich den Inhalt von yourdomain.com/lastversion.txt mit der neu veröffentlichten Version.
Habe gerade einen funktionierenden Weg gefunden. Auslösen einer Absicht für einen Markt, der nach meiner Anwendung sucht.
Getestet mit OpenIntent Newsreader, weil es einfach war, eine ältere Version .apk zu finden. Market findet eine Anwendung und ersetzt, wenn der Benutzer auf „Installieren“ klickt, die ältere Version durch die von Market. Ich denke, das ist eine viel einfachere Lösung für einen Benutzer, als .apk manuell herunterzuladen und auszuführen.
Intent intent = new Intent(Intent.ACTION_VIEW ,Uri.parse("market://search?q=" + APPLICATION_NAME));
startActivity(intent);
Und was ist, wenn auf dem Gerät kein Market (z. B. Google Apps) vorhanden ist?
– zed_0xff
17. Juni 2010 um 2:31 Uhr
Alle meine Benutzer sollten Market installiert haben. Ich denke, wenn das nicht der Fall ist, ist die Antwort von Jorgesys die einzige Option.
– Levara
17. Juni 2010 um 10:32 Uhr
Briareos386
Gibt es eine Möglichkeit, diese Instanzen zu aktualisieren, die nicht über Google Play heruntergeladen werden, da Google Play die Benutzer nicht über ein Update benachrichtigt?
Alte Frage, neue Antwort:
Nachdem ich genau dieselbe Frage untersucht hatte (vorinstallierte App auf dem Gerät, wie kann ich ein Update über Google-Play bereitstellen), fand ich diese Informationen auf support.google.com*:
Google Play kann Updates für vorinstallierte Anwendungen verwalten, sofern die folgenden Bedingungen erfüllt sind:
Die vorinstallierte App muss sich in der Systempartition befinden
Die vorinstallierte App muss kostenlos sein
Die vorinstallierte App muss mit derselben Signatur signiert sein wie die in Google Play veröffentlichte App
Der Paketname der vorinstallierten und der aktualisierten App muss identisch sein
Der Versionscode der aktualisierten App muss größer sein als der der vorinstallierten App
* Stand 13.04.2015
Ab dem 10.10.13 lautet eine der Anforderungen „Die vorinstallierte App muss kostenlos sein“.
– Stefan Hosking
10. Oktober 2013 um 2:10 Uhr
Ich entwickle eine Anwendung, die höchstwahrscheinlich auf Geräten vorinstalliert sein wird.
Dann müssen Sie mit den Geräteherstellern sprechen und ihnen Ihre Fragen stellen. Niemand sonst kann Ihnen sagen, was möglich ist und was nicht, angesichts seines Geräts und des/der Spediteure, die es vertreiben. Die Antworten hängen stark davon ab, wie sie ihre Firmware erstellen, ob Ihre Anwendung Teil der Firmware ist oder als normale App „installiert“ wird, wie ihre Vereinbarung mit dem Netzbetreiber ist gegenüber gegenüber Firmware-Updates usw. Möglicherweise erhalten Sie in der Angelegenheit nicht einmal eine Stimme.
Hier ist die Option für das neueste Versions-Update
Wenn derjenige, der die App auf dem Gerät gebündelt hat, ordnungsgemäß funktioniert, hat die App immer noch einen Market-Link (auch als System-App) und Market fordert den Benutzer auf, sie zu aktualisieren, wenn eine neue Version verfügbar ist. Schließlich passiert genau das mit einer App wie GMail, die auf Telefonen vorinstalliert ist.
Sie können ein Paket nicht automatisch installieren oder aktualisieren. Nur der Android Market ist dazu in der Lage (dh er aktualisiert sich stillschweigend).
Sie können sicherlich ein Paket herunterladen und das abfeuern Intent um es zu installieren, aber der Benutzer muss die Optionen “Nicht-Market-Apps zulassen” aktiviert haben, und er muss die Installation/das Upgrade trotzdem manuell genehmigen.
Ein Ort, an dem Sie möglicherweise nachforschen können, ist, wie Google Maps dies tut. Dies ist in der Regel vorinstalliert, scheint aber immer als Update in der Android Market App angezeigt zu werden, glaube ich. Ob es eine spezielle Flagge in der packages.xml oder manifestieren, ich weiß es nicht.
8695600cookie-checkGibt es eine Möglichkeit, die Anwendung auf Android automatisch zu aktualisieren?yes
Vermutlich vorinstalliert, indem Sie für oder mit einem Gerätehersteller oder Netzbetreiber arbeiten.
– Christoph Orr
16. Juni 2010 um 23:36 Uhr
Ja, höchstwahrscheinlich, aber wenn es sich um eine Unternehmensumgebung oder ähnliches handelt, wäre eine Option, die Installation ursprünglich durch Herunterladen vom Markt durchzuführen, anstatt Ihren eigenen Updater verwenden zu müssen.
– Cheryl Simon
17. Juni 2010 um 0:03 Uhr
Es besteht die Möglichkeit, dass Verkäufer es auf ihren Geräten vorinstallieren, aber sie werden es wahrscheinlich nicht über den Market installieren, und ich möchte es den Benutzern ermöglichen, ohne großen Aufwand ein Upgrade durchzuführen …
– Levara
17. Juni 2010 um 1:26 Uhr