From 60256c53ae45de03d522befe3958913f6bbf3095 Mon Sep 17 00:00:00 2001 From: lizhanwei <Dana_Lee1016@126.com> Date: 星期一, 16 三月 2020 15:54:05 +0800 Subject: [PATCH] 解决初次安装(卸载后安装)不发送rtk配置的bug --- app/src/main/java/safeluck/drive/evaluation/DB/signalConfigdb/SignalConfigInitWorker.java | 34 +++++++++++++++++++++++++++++++++- 1 files changed, 33 insertions(+), 1 deletions(-) diff --git a/app/src/main/java/safeluck/drive/evaluation/DB/signalConfigdb/SignalConfigInitWorker.java b/app/src/main/java/safeluck/drive/evaluation/DB/signalConfigdb/SignalConfigInitWorker.java index 63b07e4..7d0b280 100644 --- a/app/src/main/java/safeluck/drive/evaluation/DB/signalConfigdb/SignalConfigInitWorker.java +++ b/app/src/main/java/safeluck/drive/evaluation/DB/signalConfigdb/SignalConfigInitWorker.java @@ -1,11 +1,13 @@ package safeluck.drive.evaluation.DB.signalConfigdb; import android.content.Context; +import android.util.Log; import androidx.annotation.NonNull; import androidx.work.Worker; import androidx.work.WorkerParameters; +import com.anyun.exam.lib.AYSdk; import com.anyun.exam.lib.MyLog; import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; @@ -15,20 +17,25 @@ import java.io.InputStream; import java.io.InputStreamReader; import java.lang.reflect.Type; +import java.util.ArrayList; import java.util.List; import safeluck.drive.evaluation.DB.WorkRoomDataBase; +import safeluck.drive.evaluation.bean.SignalConfigRemote; public class SignalConfigInitWorker extends Worker { private static final String TAG = "SignalConfigInitWorker"; + private List<SignalConfigRemote> signalConfiglist = new ArrayList<>(); + private Gson gson; public SignalConfigInitWorker(@NonNull Context context, @NonNull WorkerParameters workerParams) { super(context, workerParams); + gson = new Gson(); } @NonNull @Override public Result doWork() { - MyLog.i(TAG,"淇″彿閰嶇疆琛ㄥ垵濮嬪寲"); + MyLog.i("淇″彿閰嶇疆琛ㄥ垵濮嬪寲"); try { InputStream inputStream = getApplicationContext().getAssets().open("signal_config_file.json"); @@ -46,4 +53,29 @@ } return Result.success(); } + + private void sendSignalConfigsToRemote(List<Integer> indexs) { + if (signalConfiglist.size() > 0) { + if (listContainsSameValue(indexs)) { + Log.i(TAG, "sendSignalConfigsToRemote: 鏈夌浉鍚岀殑index锛屼笉鑳藉彂閫�" + gson.toJson(signalConfiglist)); + } else { + AYSdk.getInstance().sendCmd(safeluck.drive.evaluation.Constant.SEND_CONFIG_SIGNAL, gson.toJson(signalConfiglist)); + } + } + } + + private boolean listContainsSameValue(List<Integer> indexs) { + for (int i=0;i<indexs.size();i++) { //鍙互榛樿鏄�0 0涓嶅垽鏂槸鍚︽湁鐩稿悓鐨刬ndex + if (indexs.get(i) == 0) { + continue; + } + for (int j =i + 1 ;j<indexs.size();j++) { + if (indexs.get(i) == indexs.get(j)) { + return true; + } + } + } + return false; + } + } -- Gitblit v1.8.0