Die Anwendung und Widget teilen sich den gleichen Prozess
würde, wenn Sie auf den Code anschauen, werden Sie feststellen, eine Klasse, die AppWidgetProvider
aller Wahrscheinlichkeit nach erweitert. Mit diesem Code wird die Benutzeroberfläche des Startbildschirms für den Teil aktualisiert, den Ihr App-Widget belegt.
Wenn Sie sich Ihr Manifest ansehen, werden Sie sehen, dass Sie Ihren AppWidgetProvider
als <receiver>
hinzugefügt haben. Dies zeigt an, dass AppWidgetProvider
ein BroadcastReceiver
ist. Manifest-registriert BroadcastReceivers
für eine sehr kurze Zeit leben - lang genug, um onReceive()
zu verarbeiten, und das ist es.
Daher ist es möglich, dass "die Anwendung und das Widget den gleichen Prozess teilen", sofern Sie bereits einen Prozess haben (z. B. der Benutzer befindet sich gerade in einer Ihrer Aktivitäten) und onUpdate()
Ihrer wird ausgelöst, dann wird der AppWidgetProvider
in demselben Prozess sein. Wenn Ihre Anwendung jedoch nicht ausgeführt wird, wird onUpdate()
für Ihre AppWidgetProvider
in einem Prozess ausgeführt, der möglicherweise zuvor Ihren Code gehostet hat oder nicht.
und folglich Singletons?
Sie sollten sich nicht darauf verlassen.
Wenn ich Dienste habe, müssen sie entfernt sein?
Absolut nicht, für jede Definition von "Remote".
In welchem Lebenszyklus wird das Widget aktualisiert? Ist nur für das Widget?
Siehe oben.
ist das nicht http://developer.android.com/guide/topics/appwidgets/index.html genug? –
Nein, ich habe es gelesen und kann meine Fragen mit dieser Information nicht beantworten – lujop