public override bool OnStartJob(JobParameters parm) { Log.Debug(TAG, "OnStartJob"); jobParam = parm; settings = JsonConvert.DeserializeObject <SettingsModel>(jobParam.Extras.GetString("settings")); ConnectivityManager connManager = (ConnectivityManager)GetSystemService(ConnectivityService); if (connManager != null) { var builder = new NetworkRequest.Builder(); builder.AddTransportType(TransportType.Wifi); builder.AddTransportType(TransportType.WifiAware); builder.AddTransportType(TransportType.Cellular); connectivityCallback = new ConnectivitiyCallback(this); connManager.RegisterNetworkCallback(builder.Build(), connectivityCallback); } else { return(false); } return(true); }
private void UnregisterNetworkCallback() { if (connectivityCallback == null) { return; } ConnectivityManager connManager = (ConnectivityManager)GetSystemService(Context.ConnectivityService); if (connManager != null) { connManager.UnregisterNetworkCallback(connectivityCallback); connectivityCallback = null; } }