我是Android开发人员, 我决定在我的应用程序中使用领域。
我实现了推送通知,所以当我从服务器获取推送时,我想更新数据库并在提交完成时收到通知。 我尝试了realm.executeTransactionAsync,但它完成时没有得到回调我认为它因为它是从非Looper线程打开的。 所以我试过realm.executeTransaction(Transaction,Callback) 但它在版本1.0.0上已被弃用,因此我无法使用它。
所以现在我使用的是1.0.0但是我无法理解如何在非looper线程中像服务一样获得成功回调?
答案 0 :(得分:0)
首先,UI线程默认与Looper
相关联。您可以致电 - realm.isAutoRefresh()
查看。
根据API你可以使用:
realm.executeTransactionAsync(new Realm.Transaction() {
@Override
public void execute(Realm realm) {
}
}, new Realm.Transaction.OnSuccess() {
@Override
public void onSuccess() {
}
}, new Realm.Transaction.OnError() {
@Override
public void onError(Throwable error) {
}
});