我AppWidgetProvider
的(当然是 a BroadcastReceiver
)已注册为 receive CONNECTIVITY_CHANGE
,因此我可以在网络恢复后立即更新小部件(尽管仅在需要时,即如果由于缺乏连接而错过了先前的更新)。
但正如这里所说,这在 Android N 中将不再可能。建议使用JobScheduler
,它允许您指定作业仅在通过该.setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY)
方法连接到网络时才运行。
但是,我看不出如何使用它来复制我想要的行为。在我看来,如果在调度 Job 的时候没有网络,该.setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY)
方法会导致 Job根本不运行,并且不会导致 Job 耐心等待,直到有网络然后运行(这是我需要的)。
那么,如何使用 Android N 保留我需要的行为?