package safeluck.drive.evaluation.DB.signalConfigdb; import android.content.Context; import androidx.annotation.NonNull; import androidx.work.Worker; import androidx.work.WorkerParameters; import com.anyun.exam.lib.MyLog; import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; import com.google.gson.stream.JsonReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.lang.reflect.Type; import java.util.List; import safeluck.drive.evaluation.DB.WorkRoomDataBase; public class SignalConfigInitWorker extends Worker { private static final String TAG = "SignalConfigInitWorker"; public SignalConfigInitWorker(@NonNull Context context, @NonNull WorkerParameters workerParams) { super(context, workerParams); } @NonNull @Override public Result doWork() { MyLog.i(TAG,"信号配置表初始化"); try { InputStream inputStream = getApplicationContext().getAssets().open("signal_config_file.json"); InputStreamReader inputStreamReader = new InputStreamReader(inputStream); JsonReader jsonReader = new JsonReader(inputStreamReader); Gson gson = new Gson(); Type type = new TypeToken>(){}.getType(); List mstus=gson.fromJson(jsonReader, type); WorkRoomDataBase.getWorkRoomDataBase(getApplicationContext()).getSignalConfigDao().insertAll(mstus); } catch (IOException e) { e.printStackTrace(); return Result.failure(); } return Result.success(); } }