3

I am getting some ANR reports on the Google Play console. It seems to affect every Android version and multiple devices. I have the same ANR report both with stack trace (below) and with stack trace not available (the majority) Does anyone have any idea where the problem may be?

Full Stack Trace here: https://pastebin.com/7A4r6LDf

"main" prio=5 tid=1 Native
  #00  pc 00000000000962d0  /apex/com.android.runtime/lib/bionic/libc.so (__ioctl+8)
  #00  pc 0000000000064c7d  /apex/com.android.runtime/lib/bionic/libc.so (ioctl+28)
  #00  pc 000000000003bb79  /system/lib/libbinder.so (android::IPCThreadState::talkWithDriver(bool)+208)
  #00  pc 000000000003cba3  /system/lib/libbinder.so (android::IPCThreadState::waitForResponse(android::Parcel*, int*)+286)
  #00  pc 000000000003c8b1  /system/lib/libbinder.so (android::IPCThreadState::transact(int, unsigned int, android::Parcel const&, android::Parcel*, unsigned int)+112)
  #00  pc 0000000000034f31  /system/lib/libbinder.so (android::BpBinder::transact(unsigned int, android::Parcel const&, android::Parcel*, unsigned int)+36)
  #00  pc 0000000000030f91  /system/lib/libmedia.so (android::BpMediaPlayerService::create(android::sp<android::IMediaPlayerClient> const&, audio_session_t)+156)
  #00  pc 000000000002b7eb  /system/lib/libmedia.so (android::MediaPlayer::setDataSource(android::sp<android::IMediaHTTPService> const&, char const*, android::KeyedVector<android::String8, android::String8> const*)+74)
  #00  pc 000000000003ae45  /system/lib/libmedia_jni.so (android_media_MediaPlayer_setDataSourceAndHeaders(_JNIEnv*, _jobject*, _jobject*, _jstring*, _jobjectArray*, _jobjectArray*)+276)
  at android.media.MediaPlayer.nativeSetDataSource (Native method)
  at android.media.MediaPlayer.setDataSource (MediaPlayer.java:1176)
  at android.media.MediaPlayer.setDataSource (MediaPlayer.java:1163)
  at android.media.MediaPlayer.setDataSource (MediaPlayer.java:1079)
  at android.media.MediaPlayer.setDataSource (MediaPlayer.java:1100)
  at android.widget.VideoView.openVideo (VideoView.java:412)
  at android.widget.VideoView.access$2200 (VideoView.java:83)
  at android.widget.VideoView$7.surfaceCreated (VideoView.java:694)
  at android.view.SurfaceView.updateSurface (SurfaceView.java:807)
  at android.view.SurfaceView$2.onPreDraw (SurfaceView.java:171)
  at android.view.ViewTreeObserver.dispatchOnPreDraw (ViewTreeObserver.java:1088)
  at android.view.ViewRootImpl.performTraversals (ViewRootImpl.java:2917)
  at android.view.ViewRootImpl.doTraversal (ViewRootImpl.java:1840)
  at android.view.ViewRootImpl$TraversalRunnable.run (ViewRootImpl.java:7937)
  at android.view.Choreographer$CallbackRecord.run (Choreographer.java:980)
  at android.view.Choreographer.doCallbacks (Choreographer.java:804)
  at android.view.Choreographer.doFrame (Choreographer.java:739)
  at android.view.Choreographer$FrameDisplayEventReceiver.run (Choreographer.java:965)
  at android.os.Handler.handleCallback (Handler.java:883)
  at android.os.Handler.dispatchMessage (Handler.java:100)
  at android.os.Looper.loop (Looper.java:264)
  at android.app.ActivityThread.main (ActivityThread.java:7663)
  at java.lang.reflect.Method.invoke (Native method)
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:492)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:980)

"Jit thread pool worker thread 0" daemon prio=5 tid=2 Runnable
  #00  pc 00000000002fe4df  /apex/com.android.runtime/lib/libart.so (art::DumpNativeStack(std::__1::basic_ostream<char, std::__1::char_traits<char>>&, int, BacktraceMap*, char const*, art::ArtMethod*, void*, bool)+78)
  #00  pc 00000000003a6ecb  /apex/com.android.runtime/lib/libart.so (art::Thread::DumpStack(std::__1::basic_ostream<char, std::__1::char_traits<char>>&, bool, BacktraceMap*, bool) const+358)
  #00  pc 00000000003a36a3  /apex/com.android.runtime/lib/libart.so (art::Thread::Dump(std::__1::basic_ostream<char, std::__1::char_traits<char>>&, bool, BacktraceMap*, bool) const+34)
  #00  pc 00000000003bc0cd  /apex/com.android.runtime/lib/libart.so (art::DumpCheckpoint::Run(art::Thread*)+576)
  #00  pc 00000000003a78d5  /apex/com.android.runtime/lib/libart.so (art::Thread::RunCheckpointFunction()+120)
  #00  pc 0000000000085e57  /apex/com.android.runtime/lib/libart-compiler.so (art::HInliner::TryInline(art::HInvoke*)+2806)
  #00  pc 0000000000176d33  /apex/com.android.runtime/lib/libart-compiler.so (art::HInliner::Run()+302)
  #00  pc 00000000000b687b  /apex/com.android.runtime/lib/libart-compiler.so (art::OptimizingCompiler::RunOptimizations(art::HGraph*, art::CodeGenerator*, art::DexCompilationUnit const&, art::PassObserver*, art::VariableSizedHandleScope*) const+434)
  #00  pc 00000000000b5cd3  /apex/com.android.runtime/lib/libart-compiler.so (art::OptimizingCompiler::TryCompile(art::ArenaAllocator*, art::ArenaStack*, art::CodeVectorAllocator*, art::DexCompilationUnit const&, art::ArtMethod*, bool, bool, art::VariableSizedHandleScope*) const+2822)
  #00  pc 000000000018faeb  /apex/com.android.runtime/lib/libart-compiler.so (art::OptimizingCompiler::JitCompile(art::Thread*, art::jit::JitCodeCache*, art::ArtMethod*, bool, bool, art::jit::JitLogger*)+1250)
  #00  pc 0000000000165b59  /apex/com.android.runtime/lib/libart-compiler.so (art::jit::JitCompiler::CompileMethod(art::Thread*, art::ArtMethod*, bool, bool)+140)
  #00  pc 0000000000165ac3  /apex/com.android.runtime/lib/libart-compiler.so (jit_compile_method+14)
  #00  pc 000000000025678f  /apex/com.android.runtime/lib/libart.so (art::jit::Jit::CompileMethod(art::ArtMethod*, art::Thread*, bool, bool)+438)
  #00  pc 0000000000258c0f  /apex/com.android.runtime/lib/libart.so (art::jit::JitCompileTask::Run(art::Thread*)+438)
  #00  pc 00000000003bcb4b  /apex/com.android.runtime/lib/libart.so (art::ThreadPoolWorker::Run()+54)
  #00  pc 00000000003bc7af  /apex/com.android.runtime/lib/libart.so (art::ThreadPoolWorker::Callback(void*)+90)
  #00  pc 00000000000a6093  /apex/com.android.runtime/lib/bionic/libc.so (__pthread_start(void*)+20)
  #00  pc 0000000000060763  /apex/com.android.runtime/lib/bionic/libc.so (__start_thread+30)

"ReferenceQueueDaemon" daemon prio=5 tid=9 Waiting
  at java.lang.Object.wait (Native method)
  at java.lang.Object.wait (Object.java:442)
  at java.lang.Object.wait (Object.java:568)
  at java.lang.Daemons$ReferenceQueueDaemon.runInternal (Daemons.java:215)
  at java.lang.Daemons$Daemon.run (Daemons.java:137)
  at java.lang.Thread.run (Thread.java:919)

"FinalizerDaemon" daemon prio=5 tid=10 Waiting
  at java.lang.Object.wait (Native method)
  at java.lang.Object.wait (Object.java:442)
  at java.lang.ref.ReferenceQueue.remove (ReferenceQueue.java:190)
  at java.lang.ref.ReferenceQueue.remove (ReferenceQueue.java:211)
  at java.lang.Daemons$FinalizerDaemon.runInternal (Daemons.java:271)
  at java.lang.Daemons$Daemon.run (Daemons.java:137)
  at java.lang.Thread.run (Thread.java:919)

"FinalizerWatchdogDaemon" daemon prio=5 tid=11 Sleeping
  at java.lang.Thread.sleep (Native method)
  at java.lang.Thread.sleep (Thread.java:440)
  at java.lang.Thread.sleep (Thread.java:356)
  at java.lang.Daemons$FinalizerWatchdogDaemon.sleepForMillis (Daemons.java:383)
  at java.lang.Daemons$FinalizerWatchdogDaemon.waitForFinalization (Daemons.java:411)
  at java.lang.Daemons$FinalizerWatchdogDaemon.runInternal (Daemons.java:323)
  at java.lang.Daemons$Daemon.run (Daemons.java:137)
  at java.lang.Thread.run (Thread.java:919)

keikei38
  • 63
  • 1
  • 9
  • make sure you or any 3rd party lib do not call `getCurrentActivity().getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);` – philk May 10 '22 at 11:35
  • @philk I am not using it, but how to check for 3rd party libs? – keikei38 May 11 '22 at 02:05
  • You just check what libs you app is linking with and check their source code. I had react-native-keep-awake which prevented the screen from going off. – philk May 17 '22 at 22:18
  • Hello @keikei38 As per the logs it's clearly showing error in setting your MediaPlayer and using setDataSource method. Which method are you using for prepare? Is it prepareAsync or prepare based on your answer I can guide you to debug your ANR. – Saumil Vaghela May 27 '22 at 12:04

0 Answers0