用于存储到数据库中的 AsyncTask 或服务或线程

AsyncTask or service or thread for storing into data base

说,我有 10k 数据需要存储在数据库中(我估计这最多需要一分钟)但是 UI.

不需要这些数据

最好的存储方式是什么?使用异步任务?服务?还是线程?

如果我使用 asyncTask / threads,即使 activity 关闭,它们还会保持“活动”状态一分钟吗?

JobIntentService 可能是最佳选择。它与 activity 无关,不会被 activity.

破坏

使用方法:

  1. 清单,
<uses-permission android:name="android.permission.WAKE_LOCK" />

<service android:name=".YourService" android:permission="android.permission.BIND_JOB_SERVICE" />
  1. 创建服务:
public class YourService extends JobIntentService {

    public static final int JOB_ID = 1;

    public static void enqueueWork(Context context, Intent work) {
        enqueueWork(context, YourService.class, JOB_ID, work);
    }

    @Override
    protected void onHandleWork(@NonNull Intent intent) {
        // Your jobs are here
    }

}
  1. 在某处开始工作: YourService.enqueueWork(context, new Intent());