2017-08-04 4 views
5

In der migration guide wird vorgeschlagen, dass wir NotificationManager.startServiceInForeground() anstelle von startService() bei Bedarf verwenden.Android O Hintergrund Service Einschränkungen

Aber ich kann keine startServiceInForeground() Methode in NotificationManager sehen. Was vermisse ich?

+0

Es ist nicht in NotificationManager, aber in Activity/Kontext (z. B. in den Startservice jetzt ist) – RobCo

+0

Sie werden compileSdkVersion bis 26 gesetzt und Support-Bibliotheken auf 26.0.0 aktualisieren Methoden in Android O. –

+1

Für die Kompatibilität eingeführt, um zu sehen Verwenden Sie 'ContextCompat.startForegroundService()' in der Support-Bibliothek 26.0.0-beta1 – RobCo

Antwort

3

Sie müssen die API-Ebene der Dokumentations-Website ändern, um die neuen Methoden

screenshot

Sie sehen sollten, die unter Methode @RobCo vorgeschlagen verwenden hinzugefügt im 26.0.0-Beta1 Support-Bibliothek Release

ContextCompat.startForegroundService() 

Und ja, die Migrationsleitfaden für das ist falsch, NotificationManager nicht über eine Methode namens startForegroundService() auch in API 26.

PS: Der Migrationsleitfaden wurde korrigiert, und jetzt ist er korrekt mit der ContextCompat.startForegroundService()-Methode verknüpft.

+0

Ja, ich habe bereits Dokumentation für API 26 gezeigt, aber wie sich herausstellt, befindet sich die Methode nicht im 'NotificationManager', sondern im' Context' ... wird stattdessen 'ContextCompat' verwendet . – drmrbrewer

0

Sie verpassen nichts. Sieht aus wie Google vergessen hat, die Dokumente zu aktualisieren.

0

Sie haben sich in der Migrationsanleitung noch nicht geändert.

Sie sollten ContextCompat.startForegroundService() anstelle von NotificationManager.startServiceInForeground() Methode verwenden.

Verwandte Themen