android - 使用 Android Room Insert AsyncTask 时如何获取插入 ID?
问题描述
如何在活动中读取 insertId?活动:
private void saveNewCode() {
mCodeRepository.insertCodeTask(mInitialCode);
}
在存储库插入代码中:
public void insertCodeTask(Code code) {
new InsertAsyncTask(myDatabase.getCodeDao()).execute(code);
}
插入异步任务:
public class InsertAsyncTask extends AsyncTask<Code, Void, Void> {
private static final String TAG = "InsertAsyncTask";
private CodeDao mCodeDao;
private long insertId;
public InsertAsyncTask(CodeDao dao) {
mCodeDao = dao;
}
@Override
protected Void doInBackground(Code... codes) {
insertId = mCodeDao.insertCode(codes);
return null;
}
}
如何将 insertId 传递给 Activity?实现接口或者onPostExecute方法,但是应该怎么传回Activity呢?谢谢。
解决方案
推荐阅读
- vue.js - 来自 api 的 vue 和大型数据集
- android - 谷歌播放权限问题
- python - 如何在熊猫条形图中按字母顺序排列 x 标签并更改颜色?
- android - OkHttp 不断收到 StreamResetException: stream was reset: INTERNAL_ERROR when it's 200
- javascript - 艾玛迪斯 API 覆盖范围
- pytorch - 为什么 torch.autograd 不能直接计算完整的雅可比矩阵,而它在数学上是可实现的
- mongodb - MongoDB $lookup 和 $match
- javascript - 如何比较具有高阶函数的数组?JavaScript
- css - 如何从 Templated.co 免费模板调整 Poptrox 弹出图像大小
- sqlalchemy - mysql表不匹配sqlalchemy模型会导致错误吗?