4

デバイスがインターネットに接続されているときに、すべてのデータベース レコードをバックグラウンドでサーバーに順次アップロードするアプリに取り組んでいます。

このBroadcastReceiverために、ネットワーク接続をリッスンする を作成しました。このレシーバーがトリガーされると、レコードをアップロードするためのバックグラウンド サービスが開始されます。

これが私のコードです。

public class NetworkChangeReceiver extends BroadcastReceiver {

    @Override
    public void onReceive(final Context context, final Intent intent) {
       AppUtils.checkInternetConnection(context));
        //If the device has the internet connection and if there are any pending records to upload to server then start the service for uploading the records.
        if (AppUtils.checkInternetConnection(context)) {
            if (Database.getInstance().getTotalRecordsCount() > 0) {
                context.startService(new Intent(context, SurveyUploadService.class));
            }
        } else {
            context.stopService(new Intent(context, SurveyUploadService.class));
        }
    }
}

今、私の疑問は

1. JobSchedulerを使用して同じことを行うことはできますか?
2.より良い(私のものまたはJobSchedulerを使用するもの)アプローチとその理由は何ですか?

4

1 に答える 1