2010-08-02 6 views
7

Mögliche Duplizieren:
Removing Widget from Home Screen when UninstalledWie entfernt man das Widget, wenn die App in Android deinstalliert wird?

In Android, ich habe ein Widget für meine Anwendung erstellt. Wenn ich die App deinstalliere, zeigt das Widget "Fehler beim Laden des Widgets" auf dem Startbildschirm an. Ich brauche ein Szenario, in dem das Widget vom Entwickler durch Code (und nicht durch Ziehen und Ablegen in den Papierkorb) entfernt werden soll, wenn ich die App deinstalliere. Ist es möglich? Wenn ja, welche Änderungen müssen wir tun? Gibt es etwas, das im Manifest festgelegt werden kann, sodass alle Referenzen der App entfernt werden, nachdem sie deinstalliert wurde?

+0

Alle Nachrichten erhalten über dieses Sub ject? :) – Tamotsukun

Antwort

0

Hallo! Wenn Sie die App-Widget Host-Manager löschen sollte eine der folgenden Absichten ausgestrahlt ... ACTION_APPWIDGET_UPDATE ACTION_APPWIDGET_DELETED ACTION_APPWIDGET_ENABLED ACTION_APPWIDGET_DISABLED

Um die Nutzung dieser, in Ihrem appwidget Provider-Klasse (oder Ihre individuelle Erweiterung der Rundfunkempfänger zu machen) die Sendung (oder benutzen Sie onDeleted() in der Klasse appwidgetprovider) und löschen sich aus der Anwendung Widget Host-Manager das Widget mit der ID des Widgets ....

hoffe, das hilft ...

+0

Hast du das wirklich versucht? Die von Ihnen aufgelisteten Nachrichten werden NICHT gesendet, wenn die App gelöscht wird. Insbesondere wird onDeleted() in AppWidgetProvider nur aufgerufen, wenn das Widget entfernt wird, nicht die gesamte App. –

+0

Hey Carl, ja, ich habe es versucht. Außerdem habe ich die Android-Dev-Site als Referenz für meinen Kommentar verwendet. Ich werde es wieder versuchen, da es fast ein Jahr her ist, seit ich diesen Kommentar geschrieben habe. Ich werde dich es wissen lassen. –

+0

Keine dieser Sendungen wird gesendet, wenn die * App * deinstalliert wird. Insbesondere wird [ACTION_APPWIDGET_DELETED gesendet, wenn ein * Widget * auf dem Startbildschirm gelöscht wird] (http://developer.android.com/reference/android/appwidget/AppWidgetManager.html#ACTION_APPWIDGET_DELETED). – sschuberth

5

Es ist nicht möglich, die Kontrolle zu erlangen, wenn Ihre App deinstalliert wird. Ich glaube, Android 2.2 kann das App-Widget besser automatisch entfernen.

+0

Gibt es keine Möglichkeit, meine Widgets nach der Deinstallation meiner App zu löschen? Sollte das OS das nicht behandeln? – Janusz

+0

@ Janusz: "Sollte das OS das nicht behandeln?" - Ja, deshalb habe ich geschrieben: "Ich denke, Android 2.2 wird es vielleicht besser machen, dein App-Widget automatisch zu entfernen." – CommonsWare

+0

Nein, tut es leider nicht. Es gibt Verbesserungen für Widgets angekündigt für 3.0 vielleicht müssen wir bis dahin warten. – Janusz