Mein AppWidgetProvider
(was natürlich ein BroadcastReceiver
) registriert CONNECTIVITY_CHANGE
zu erhalten, so dass ich, sobald Sie die Widgets aktualisieren kann als Netzwerk gestellt wird (wenn auch nur bei Bedarf, dh wenn ein vorherigen Update wurde wegen mangelnder Konnektivität verpasst).Android N: mit einem Mangel an CONNECTIVITY_CHANGE Umgang
Aber als here wurde im Rahmen dieses nicht mehr im Android N. möglich sein, ist der Vorschlag JobScheduler
, verwenden, die Sie, dass der Job nur angeben kann, wenn sie sich mit einem Netzwerk mittels der Methode .setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY)
verbunden.
Allerdings kann ich nicht sehen, wie dies verwendet werden kann, um mein gewünschtes Verhalten zu replizieren. Es scheint mir, dass die .setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY)
Methode den Job überhaupt nicht ausgeführt wird, wenn kein Netzwerk zum Zeitpunkt, dass der Job geplant ist, und es wird nicht verursachen den Job geduldig warten, bis es ein Netzwerk gibt und dann lauf (was ich brauche).
Also, wie behalte ich das Verhalten, das ich brauche, mit Android N?
Sie können Firebase Dispatcher auch verwenden, wenn Sie möchten. Es ist abwärtskompatibel. – Embydextrous
Sie können Jobs auch über den Neustart des Geräts hinweg anhalten. – Embydextrous