如何在Firebase作业调度程序中检测网络断开连接?

时间:2017-10-31 21:23:00

标签: android android-jobscheduler firebase-job-dispatcher

在firebase中,Job dispatcher可以检测我们何时连接到网络,但是如何检测我们何时从网络断开连接?

    Job myJob = dispatcher.newJobBuilder()
    .setService(MyJobService.class) 
    .setTag("my-unique-tag")
    .setConstraints(
    // only run on an unmetered network
    Constraint.ON_UNMETERED_NETWORK,
    // only run when the device is charging
    Constraint.DEVICE_CHARGING
     )
    .build();

dispatcher.mustSchedule(myJob);

这将检测何时连接到未经测试的网络,我想在从所有网络断开连接时启动服务

1 个答案:

答案 0 :(得分:1)

使用firebase调度程序,您无法检查断开连接(据我所知),但您可以使用广播接收器来检测连接更改并在其中调用您的工作服务

请参阅此链接以了解广播接收器的用途

Broadcast receiver for checking internet connection in android app

在最新版本的android中,您需要动态注册和取消注册广播接收器