我正在使用 FusedLocationProvider API 向 PendingIntent 注册一些地理围栏,当我的应用程序通过地理围栏事件启动(应用程序被手动终止以触发此行为)时,我启动了一个后台服务来做一些工作。
在此服务中,我创建了一个单独的后台线程来执行一些长时间运行的任务,并获得了一个唤醒锁,以确保我的任务已完成。该服务会持续运行更长的时间(30 - 50 分钟),即使它不应该如此。根据我对 Android O 近期变化的理解,它不应该被列入白名单并让自己运行更长的时间。
是 PendingIntents 唤醒应用程序的期望行为还是某种错误,然后它被视为白名单,即使这些 Intents 不是用于通知(即用户可以看到的任何内容)。
或者这些意图属于“接收广播,例如 SMS/MMS 消息”的类别。如文档中所述