I have a crash that has slowly crept up in crash rate over my last few releases. All attempts to fix the crash have proved futile. I suspect that the crash happens in the background and users are not actually seeing the issue, else I would have many more reviews about the app crashing.
Do users still need to tap the the crash module that pops up in order for Google to log the crash or does the crash report get sent automatically at this point?
I can not find a definitive answer to this.
Here is the crash if anyone has ideas. There is a lot of info available on that I have tried as well as anything else I could think of. Dug through every SDK, reverted back to previous target API, turned off features etc etc :(
java.lang.RuntimeException: An error occurred while executing doInBackground()
at
android.os.AsyncTask$3.done(AsyncTask.java:354)
at
java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:383)
at
java.util.concurrent.FutureTask.setException(FutureTask.java:252)
at
java.util.concurrent.FutureTask.run(FutureTask.java:271)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at
java.lang.Thread.run(Thread.java:798)
Caused by: java.lang.SecurityException: Caller no longer running, last stopped +2s531ms because: timed out while starting
at
android.os.Parcel.createException(Parcel.java:1950)
at
android.os.Parcel.readException(Parcel.java:1918)
at
android.os.Parcel.readException(Parcel.java:1868)
at
android.app.job.IJobCallback$Stub$Proxy.dequeueWork(IJobCallback.java:195)
at
android.app.job.JobParameters.dequeueWork(JobParameters.java:243)
at
androidx.core.app.JobIntentService$JobServiceEngineImpl.dequeueWork(:4)
at
androidx.core.app.JobIntentService.dequeueWork(:2)
at
androidx.core.app.JobIntentService$CommandProcessor.doInBackground(:2)
at
androidx.core.app.JobIntentService$CommandProcessor.doInBackground(:1)
at
android.os.AsyncTask$2.call(AsyncTask.java:333)
at
java.util.concurrent.FutureTask.run(FutureTask.java:266)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at
java.lang.Thread.run(Thread.java:798)
Caused by: android.os.RemoteException: Remote stack trace:
at
com.android.server.job.JobServiceContext.assertCallerLocked(JobServiceContext.java:481)
at
com.android.server.job.JobServiceContext.doDequeueWork(JobServiceContext.java:359)
at
com.android.server.job.JobServiceContext$JobCallback.dequeueWork(JobServiceContext.java:160)
at
android.app.job.IJobCallback$Stub.onTransact(IJobCallback.java:83)
at
android.os.Binder.execTransact(Binder.java:746)
Related
I've got an app in the play store, and have just started seeing the following crash on crashlytics as we're releasing a new version:
Fatal Exception: java.lang.VerifyError: Verifier rejected class app.models.basket.BasketPrice: app.models.pricing.Money app.models.basket.BasketPrice.component1() failed to verify: app.models.pricing.Money app.models.basket.BasketPrice.component1(): [0x2] return-wide not expected
app.models.pricing.Money app.models.basket.BasketPrice.component2() failed to verify: app.models.pricing.Money app.models.basket.BasketPrice.component2(): [0x2] return-wide not expected
app.models.pricing.Money app.models.basket.BasketPrice.component3() failed to verify: app.models.pricing.Money app.models.basket.BasketPrice.component3(): [0x2] return-wide not expected (declaration of 'app.models.basket.BasketPrice' appears in /data/app/~~SMvMJ3wjLcBZoO_7ATEdrA==/app-MRhsaTqPRxyDfq-Ma3jNMA==/base.apk)
at app.models.basket.BasketPriceJsonAdapter.fromJson(BasketPriceJsonAdapter.kt:53)
at app.models.basket.BasketPriceJsonAdapter.fromJson(BasketPriceJsonAdapter.kt:21)
at com.squareup.moshi.internal.NullSafeJsonAdapter.fromJson(NullSafeJsonAdapter.java:41)
at app.models.basket.BasketPricedFulfilmentOptionJsonAdapter.fromJson(BasketPricedFulfilmentOptionJsonAdapter.kt:57)
at app.models.basket.BasketPricedFulfilmentOptionJsonAdapter.fromJson(BasketPricedFulfilmentOptionJsonAdapter.kt:22)
at com.squareup.moshi.internal.NullSafeJsonAdapter.fromJson(NullSafeJsonAdapter.java:41)
at app.models.basket.BasketPricedFulfilmentOptionsJsonAdapter.fromJson(BasketPricedFulfilmentOptionsJsonAdapter.kt:37)
at app.models.basket.BasketPricedFulfilmentOptionsJsonAdapter.fromJson(BasketPricedFulfilmentOptionsJsonAdapter.kt:20)
at com.squareup.moshi.internal.NullSafeJsonAdapter.fromJson(NullSafeJsonAdapter.java:41)
at app.models.basket.BasketResponseJsonAdapter.fromJson(BasketResponseJsonAdapter.kt:79)
at app.models.basket.BasketResponseJsonAdapter.fromJson(BasketResponseJsonAdapter.kt:24)
at com.squareup.moshi.internal.NullSafeJsonAdapter.fromJson(NullSafeJsonAdapter.java:41)
at app.models.DataWrapperJsonAdapter.fromJson(DataWrapperJsonAdapter.kt:44)
at app.models.DataWrapperJsonAdapter.toJson(DataWrapperJsonAdapter.kt:22)
at com.squareup.moshi.internal.NullSafeJsonAdapter.fromJson(NullSafeJsonAdapter.java:41)
at retrofit2.converter.moshi.MoshiResponseBodyConverter.convert(MoshiResponseBodyConverter.java:46)
at retrofit2.converter.moshi.MoshiResponseBodyConverter.convert(MoshiResponseBodyConverter.java:27)
at retrofit2.OkHttpCall.parseResponse(OkHttpCall.java:243)
at retrofit2.OkHttpCall$1.onResponse(OkHttpCall.java:153)
at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:519)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:920)
I can't find anyone with this same return-wide not expected issue anywhere on the internet, although the VerifyError thing seems to be when the Dalvik runtime runs into issues.
My theory at the moment is that this is just a device specific issue for Oneplus Android 12 devices, but the stacktrace is in our(/Moshi) code, and it seems to only be on the new version, so I feel like there's some kind of aggravating factor. Can anyone say why this is happening?
I am trying to use Azure Cosmos Java-based libraries for connecting my Android app to Cosmos and getting errors. I am simply doing:
CosmosClient client = new CosmosClientBuilder()
.endpoint("https://mystuff.documents.azure.com:443/")
.key("MY_KEY")
.preferredRegions(Collections.singletonList("West US"))
.consistencyLevel(ConsistencyLevel.EVENTUAL)
.contentResponseOnWriteEnabled(true)
.buildClient();
but I get exceptions like:
java.lang.RuntimeException: An error occurred while executing doInBackground()
at android.os.AsyncTask$4.done(AsyncTask.java:415)
at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:383)
at java.util.concurrent.FutureTask.setException(FutureTask.java:252)
at java.util.concurrent.FutureTask.run(FutureTask.java:271)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:305)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
Caused by: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/sun/management/OperatingSystemMXBean;
at com.azure.cosmos.implementation.cpu.CpuReader.<init>(CpuReader.java:25)
at com.azure.cosmos.implementation.cpu.CpuMonitor.<clinit>(CpuMonitor.java:35)
at com.azure.cosmos.implementation.cpu.CpuMonitor.register(CpuMonitor.java:70)
at com.azure.cosmos.implementation.RxDocumentClientImpl.<init>(RxDocumentClientImpl.java:263)
at com.azure.cosmos.implementation.RxDocumentClientImpl.<init>(RxDocumentClientImpl.java:159)
at com.azure.cosmos.implementation.RxDocumentClientImpl.<init>(RxDocumentClientImpl.java:144)
This seems to me to be due to the fact that Android isn't using Sun / Oracle Java but something else.
Anyone found a good way around this? Besides ditching Microsoft's stuff for something more Android-friendly?
After upgrading the Text Recognition dependency from 16.1.1 to 16.1.3:
com.google.android.gms:play-services-mlkit-text-recognition:16.1.3
on some devices(Realme 3 Pro Android 10), the app starts crashing when calling
TextRecognition.getClient().process(InputImage.fromFilePath(context, data)).await()
here is the stack trace from firebase:
Non-fatal Exception: f.b.e.a.a: Failed to init thin text recognizer.
at com.google.mlkit.vision.text.internal.zzb.zza(zzb.java:47)
at com.google.mlkit.vision.text.internal.zzn.load(zzn.java:3)
at com.google.mlkit.common.sdkinternal.ModelResource.zza(ModelResource.java:18)
at com.google.mlkit.common.sdkinternal.zzn.run(zzn.java:10)
at com.google.mlkit.common.sdkinternal.zzp.run(zzp.java:10)
at com.google.mlkit.common.sdkinternal.MlKitThreadPool.zze(MlKitThreadPool.java:13)
at com.google.mlkit.common.sdkinternal.MlKitThreadPool.zzc(MlKitThreadPool.java:8)
at com.google.mlkit.common.sdkinternal.zzj.run(zzj.java:2)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at com.google.mlkit.common.sdkinternal.MlKitThreadPool.zzd(MlKitThreadPool.java:10)
at com.google.mlkit.common.sdkinternal.zzk.run(zzk.java:2)
at java.lang.Thread.run(Thread.java:919)
Caused by android.os.RemoteException: Not allowed since feature flag for ML Kit is not enabled.
at ii.a(ii.java)
at com.google.android.gms.vision.text.mlkit.TextRecognizerCreator.newTextRecognizer(TextRecognizerCreator.java:11)
at com.google.android.gms.vision.text.mlkit.TextRecognizerCreator.newTextRecognizer(TextRecognizerCreator.java)
at mu.u(mu.java:4)
at al.onTransact(al.java:4)
at android.os.Binder.transact(Binder.java:914)
at com.google.android.gms.internal.mlkit_vision_text.zza.zzb(zza.java:7)
at com.google.android.gms.internal.mlkit_vision_text.zzlh.zzd(zzlh.java:8)
at com.google.mlkit.vision.text.internal.zzb.zza(zzb.java:30)
at com.google.mlkit.vision.text.internal.zzn.load(zzn.java:3)
at com.google.mlkit.common.sdkinternal.ModelResource.zza(ModelResource.java:18)
at com.google.mlkit.common.sdkinternal.zzn.run(zzn.java:10)
at com.google.mlkit.common.sdkinternal.zzp.run(zzp.java:10)
at com.google.mlkit.common.sdkinternal.MlKitThreadPool.zze(MlKitThreadPool.java:13)
at com.google.mlkit.common.sdkinternal.MlKitThreadPool.zzc(MlKitThreadPool.java:8)
at com.google.mlkit.common.sdkinternal.zzj.run(zzj.java:2)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at com.google.mlkit.common.sdkinternal.MlKitThreadPool.zzd(MlKitThreadPool.java:10)
at com.google.mlkit.common.sdkinternal.zzk.run(zzk.java:2)
at java.lang.Thread.run(Thread.java:919)
The feature flag should already be enabled everywhere, it may due to your play services have not received the update. You can reboot your device to see if the issue gets resolved.
See github.com/googlesamples/mlkit/issues/236 for a similar report.
I have benn trying for many days to install an app on any device using android oreo either in debug mode with android studio either by creating apk, but I still fail. At the beggining I had issue described here install_failed_no_matching_abis failed to extract native libraries res=-113 after updating to android 8.0 oreo
and while I am trying to solve this I get different errors all the time.
When I set android.enableAapt2=true I get this error
when I set android.enableAapt2=false I get warning
The option 'android.enableAapt2' is deprecated and should not be used anymore.
Use 'android.enableAapt2=true' to remove this warning.
I`t will be removed at the end of 2018..`
and finally this error comes up
and this in log Mesagges
04-17 01:37:27.331 9763-11258/? E/xiy: Job(ItemMessageAttachmentsCacheEvictorJob#0.126) Enqueued job 'ItemMessageAttachmentsCacheEvictorJob' failed
java.lang.IllegalArgumentException: Attachment cache cannot be null.
at piu.a(Unknown Source:4)
at pki.a(Unknown Source:17)
at yik.a(SourceFile:1)
at xik.b(SourceFile:2)
at xil.a(Unknown Source:4)
at yik.a(SourceFile:1)
at yhr.run(SourceFile:1)
at wzc.run(Unknown Source:3)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:457)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:782)
Either way I cannot install my app on any device running oreo although it works fine up to nougat.Even if I buld apk ig get error parsing apk file.
I've got a React Native app that is working for iOS and am trying to get it up and running for Android. I have the app up and running in the emulator and I would like to debug it in Chrome to figure out some issues.
The problem occurs when I open up the in app dev tools and click the Debug in Chrome option the app crashes for a couple seconds and I get an alert message that says "Unfortunately MyApp has stopped." then right after that the app comes back up with the red screen and says "Unable to connect with remote debugger".
I believe I've set up everything as the directions said on this page.
Has anyone seen this kind of issue and if so is there a way to fix it?
Thanks!
Same problem here on Android. I've just started a project with react-native init and begun to follow the Facebook tutorial.
When I run the app without debugging, it works fine. If I enable Debug JS remotely, it crashes after 1 minute (doing nothing).
Testing on Samsung Galaxy S5, react-native-cli 0.2.0, react-native 0.32.1, Windows 7, Chrome 53.
In Android Studio I've found this stacktrace:
09-08 13:25:06.322 31080-3735/com.tutorialproject W/libc: pthread_create failed: couldn't allocate 1064960-byte stack: Out of memory
09-08 13:25:06.322 31080-3735/com.tutorialproject E/art: Throwing OutOfMemoryError "pthread_create (1040KB stack) failed: Try again"
09-08 13:25:06.332 31080-3735/com.tutorialproject E/AndroidRuntime: FATAL EXCEPTION: OkHttp Dispatcher
Process: com.tutorialproject, PID: 31080
java.lang.OutOfMemoryError: pthread_create (1040KB stack) failed: Try again
at java.lang.Thread.nativeCreate(Native Method)
at java.lang.Thread.start(Thread.java:1063)
at java.util.concurrent.ThreadPoolExecutor.addWorker(ThreadPoolExecutor.java:920)
at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:1338)
at okhttp3.ConnectionPool.put(ConnectionPool.java:135)
at okhttp3.OkHttpClient$1.put(OkHttpClient.java:149)
at okhttp3.internal.connection.StreamAllocation.findConnection(StreamAllocation.java:188)
at okhttp3.internal.connection.StreamAllocation.findHealthyConnection(StreamAllocation.java:129)
at okhttp3.internal.connection.StreamAllocation.newStream(StreamAllocation.java:98)
at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:42)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:67)
at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:109)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:67)
at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92)
at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:124)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:67)
at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.java:170)
at okhttp3.RealCall.access$100(RealCall.java:33)
at okhttp3.RealCall$AsyncCall.execute(RealCall.java:120)
at okhttp3.internal.NamedRunnable.run(NamedRunnable.java:32)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:818)
09-08 13:25:06.372 31080-31080/com.tutorialproject D/SensorManager: unregisterListener ::
09-08 13:25:06.852 31080-31185/com.tutorialproject W/unknown:React: Tried to enqueue runnable on already finished thread: 'native_modules... dropping Runnable.
09-08 13:25:06.852 31080-31185/com.tutorialproject W/MessageQueue: Handler (com.facebook.react.bridge.queue.MessageQueueThreadHandler) {246b7490} sending message to a Handler on a dead thread
java.lang.IllegalStateException: Handler (com.facebook.react.bridge.queue.MessageQueueThreadHandler) {246b7490} sending message to a Handler on a dead thread
at android.os.MessageQueue.enqueueMessage(MessageQueue.java:325)
at android.os.Handler.enqueueMessage(Handler.java:631)
at android.os.Handler.sendMessageAtTime(Handler.java:600)
at android.os.Handler.sendMessageDelayed(Handler.java:570)
at android.os.Handler.post(Handler.java:326)
at com.facebook.react.bridge.queue.MessageQueueThreadImpl.runOnQueue(MessageQueueThreadImpl.java:61)
at com.facebook.react.bridge.queue.NativeRunnable.run(Native Method)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:31)
at android.os.Looper.loop(Looper.java:145)
at com.facebook.react.bridge.queue.MessageQueueThreadImpl$3.run(MessageQueueThreadImpl.java:196)
at java.lang.Thread.run(Thread.java:818)
09-08 13:25:06.862 31080-3792/com.tutorialproject W/ContextImpl: Failed to ensure directory: /storage/extSdCard/Android/data/com.tutorialproject/cache
09-08 13:25:11.362 31080-31088/com.tutorialproject W/art: Suspending all threads took: 5.930ms
It's a really simple project, with just a couple of text components, so I'm not doing any request. All the network communication is due the remotely debugging.
Since it's an OutOfMemory problem I've tried to add android:largeHeap="true" to Manifest.xml, but nothing changes. The app reaches the 32Mb consumption and dies.
I've modified the app, so it loads a component with an image 5000 times. With the debugging disabled, the app allocates up to 70Mb and works fine. I can scroll all over the screen and nothing crashes. When I enable the remote debugging, I works for a while, until it tries to allocate more memory and crashes again. I can start again the app with the debugging enabled, and it starts well, but again crashes after a while.
IMHO the React Native remote debugging feature has a problem for allocating new memory (and for some reason it consumes a lot of memory even when the app is stopped).
I had this problem as well (which is why I came across your post). Have you by any chance based your project on the React Native Material Kit Demo? I had, and was having exactly the same problem with crashing when launching devtools.
I've now rebuilt my project from the ground up using react-native init and the problem seems to have gone away.