Je dois collecter des données GPS, les enregistrer dans la base de données, puis les envoyer au backend chaque minute. Et je veux juste m'assurer que le mode Doze ne gâchera pas les choses.Android Doze: affectera-t-il l'ensemble de l'application ou ses processus séparément?
Supposons que je lance mon service de premier plan et mettons en œuvre il rappel
onLocationChanged
. Dois-je faire tout cela (collecte/stockage/envoi) dans un service de premier plan juste pour être sûr que Doze permettra d'utiliser le GPS/Internet?Si je veux stocker/envoyer des données ailleurs, par ex. dans un
BroadcastReceiver
, comment puis-je être sûr que monBroadcastReceiver
est prêt à gérer les données et n'est pas endormi?Il y a un bogue dans M Android, ce qui rend les services de premier plan affectées par le mode Doze: https://stackoverflow.com/a/37869501/3210556
Un woakaround possible est de lancer un service de premier plan dans un processus séparé.
En supposant qu'il existe un service de premier plan dans l'application, qu'est-ce qui n'est pas affecté par doze?
- Le service de premier plan lui-même?
- Le processus associé au service de premier plan?
- L'ensemble de l'application?
Merci.