0
から呼び出さ取得されていない私はexecuteTransaction
機能を使用してRealm
でレコードを更新しようとしていますが、私はIntentService
からのコードのこの部分を呼び出すときに、Ream.Transaction.Callback
のonSuccess
はcopyToRealmOrUpdate
を呼び出した後に自動的に呼び出さなっていません。するonSuccessはIntentService
final Realm realm = getRealm() ;
realm.executeTransaction(new Realm.Transaction() {
@Override
public void execute(Realm realm) {
//some db operations and eventually calling
realm.
realm.copyToRealmOrUpdate(employeeList);
}
}, new Realm.Transaction.Callback() {
@Override
public void onSuccess() {
// this function never gets called if
//the whole function is called from IntentService
realm.close();
}
@Override
public void onError(Exception e) {
realm.close();
}
});
private RealmConfiguration initalizeRealmConfig(){
if(realmConfiguration == null)
return realmConfiguration = new RealmConfiguration.Builder(mContext)
.name(DB_NAME)
.schemaVersion(DB_VERSION)
.build();
else return realmConfiguration;
}
public Realm getRealm(){
return Realm.getInstance(initalizeRealmConfig());
}
私が呼び出されるonSuccess
活動からのコードの上に呼び出したとき、私は、バックグラウンドDB操作やWebサービスの呼び出しのためIntentService
を使用していますが、私は本当に要件ごとにActivityからそれを呼び出したいいけません。
ので、あなたは、私は 'IntentService'からそれを呼び出す必要がいけないわけ? – Hunt
IntentService内では非同期トランザクションは必要ありませんが、代わりに、IntentServiceを使用せずに非同期トランザクションを使用します。 –
私はIntentServiceと非同期トランザクションの両方を使用できる方法はありますか – Hunt