android-asynctask – Android Room AsyncTask

前端之家收集整理的这篇文章主要介绍了android-asynctask – Android Room AsyncTask前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我的团队开发了一个新的 Android应用程序,广泛使用Room.

我不确定我们是否正确使用AsyncTask.

我们不得不在AsyncTasks中包含所有调用insert / update / delete,这导致了大量的AsyncTasks.所有打入房间的电话均来自后台服务.活动或片段没有直接的房间访问权限 – 他们通过LiveData获取所有内容.

插入行的示例调用

AsyncTask.execute(() -> myModelDAO.insertInstance(myModel));

有了这个在DAO中:

@Insert
void insertInstance(MyModel model);

解决方法

要完成@CommonsWare答案,您可以使用 Executor类将Room查询执行到后台线程.
Executor myExecutor = Executors.newSingleThreadExecutor();
myExecutor.execute(() -> {
   myModelDAO.insertInstance(myModel)
});

谷歌在他们的Android架构组件guide上展示了一个例子.

猜你在找的Android相关文章