Issue
I am working on an android app and I am using realm DB, my app was worked properly, but suddenly if i want to write to DB the app stopped and give me this error.
Getting MAX_TEXTURE_SIZE from GradienCache
Getting MAX_TEXTURE_SIZE from Caches::initConstraints()
---
FATAL EXCEPTION: main
java.lang.IllegalStateException: Nested transactions are not allowed. Use
commitTransaction() after each beginTransaction().
atio.realm.internal.ImplicitTransaction.promoteToWrite(ImplicitTransaction.java:)
at io.realm.Realm.beginTransaction(Realm.java:1454)
at.onClick(AddMedication.java:52)
at android.view.View.performClick(View.java:4240)
at android.view.View$PerformClick.run(View.java:17721)
at android.os.Handler.handleCallback(Handler.java:730)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5103)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
at dalvik.system.NativeStart.main(Native Method)
Could not find class 'android.util.ArrayMap', referenced from method
com.android.tools.fd.runtime.MonkeyPatcher.monkeyPatchExistingResources
I tried many available solutions but the problem have not fixed yet!
any help!
Solution
Probably you are calling beginTransaction() twice. Before the second call you must commit or rollback the first one.
beginTransaction(); // First call
try{
doSomeWorkOnDB();
commit();
} except (...){
rollback();
}
...
beginTransaction(); // Second call
try{
doOtherWorkOnDB();
commit();
} except (...){
rollback();
}
Hope it helps.
Answered By - Pablo
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.