package safeluck.drive.evaluation.DB; import android.content.Context; import android.util.Log; import androidx.annotation.NonNull; import androidx.work.WorkRequest; import androidx.work.Worker; import androidx.work.WorkerParameters; import androidx.work.impl.model.WorkSpec; 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 java.util.Set; import java.util.UUID; /** * MyApplication2 * Created by lzw on 2019/11/25. 13:11:57 * 邮箱:632393724@qq.com * All Rights Saved! Chongqing AnYun Tech co. LTD */ public class SeedDatabaseWorker extends Worker { private static final String TAG = "SeedDatabaseWorker"; public SeedDatabaseWorker(@NonNull Context context, @NonNull WorkerParameters workerParams) { super(context, workerParams); } @NonNull @Override public Result doWork() { Log.i(TAG, "doWork: "+Thread.currentThread().getId()); try { InputStream inputStream = getApplicationContext().getAssets().open("students_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()).getstudentDao().insertAll(mstus); } catch (IOException e) { e.printStackTrace(); return Result.failure(); } return Result.success(); } }