3

I'm new to Android dev. Since last month, many users have reported that my app has crash "Application Not Responding".

My app is relied heavily on webview, I have check the server side but nothing wrong happens: the request always response less than 100ms.

This is the sample user agent:

Mozilla/5.0 (Linux; Android 11; SOG03 Build/61.0.D.2.179; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/98.0.4758.101 Mobile Safari/537.36

And this is the Google Analytics logs:

  #00  pc 000000000008033c  /apex/com.android.runtime/lib64/bionic/libc.so (syscall+28)
  #00  pc 000000000014c1f4  /apex/com.android.runtime/lib64/libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*)+148)
  #00  pc 000000000038784c  /apex/com.android.runtime/lib64/libart.so (art::JNI::NewLocalRef(_JNIEnv*, _jobject*)+436)
  #00  pc 0000000002806fdc  /data/app/com.google.android.webview-LmvD2NigrLxQnUwb47Tgqw==/base.apk!libmonochrome.so (???)
  #00  pc 00000000020f8f90  /data/app/com.google.android.webview-LmvD2NigrLxQnUwb47Tgqw==/base.apk!libmonochrome.so (???)
  #00  pc 00000000020f3944  /data/app/com.google.android.webview-LmvD2NigrLxQnUwb47Tgqw==/base.apk!libmonochrome.so (???)
  #00  pc 00000000020f2c48  /data/app/com.google.android.webview-LmvD2NigrLxQnUwb47Tgqw==/base.apk!libmonochrome.so (???)
  #00  pc 0000000001ea24d0  /data/app/com.google.android.webview-LmvD2NigrLxQnUwb47Tgqw==/base.apk!libmonochrome.so (???)
  #00  pc 00000000020f3a0c  /data/app/com.google.android.webview-LmvD2NigrLxQnUwb47Tgqw==/base.apk!libmonochrome.so (???)
  #00  pc 0000000004706660  /data/app/com.google.android.webview-LmvD2NigrLxQnUwb47Tgqw==/base.apk!libmonochrome.so (???)
  #00  pc 0000000001ea04d4  /data/app/com.google.android.webview-LmvD2NigrLxQnUwb47Tgqw==/base.apk!libmonochrome.so (???)
  #00  pc 0000000001ea0d68  /data/app/com.google.android.webview-LmvD2NigrLxQnUwb47Tgqw==/base.apk!libmonochrome.so (???)
  #00  pc 000000000204d47c  /data/app/com.google.android.webview-LmvD2NigrLxQnUwb47Tgqw==/base.apk!libmonochrome.so (???)
  #00  pc 000000000204f930  /data/app/com.google.android.webview-LmvD2NigrLxQnUwb47Tgqw==/base.apk!libmonochrome.so (???)
  #00  pc 0000000001ea6e3c  /data/app/com.google.android.webview-LmvD2NigrLxQnUwb47Tgqw==/base.apk!libmonochrome.so (???)
  #00  pc 00000000038db4c0  /data/app/com.google.android.webview-LmvD2NigrLxQnUwb47Tgqw==/base.apk!libmonochrome.so (???)
  #00  pc 00000000038db480  /data/app/com.google.android.webview-LmvD2NigrLxQnUwb47Tgqw==/base.apk!libmonochrome.so (???)
  #00  pc 00000000033819e8  /data/app/com.google.android.webview-LmvD2NigrLxQnUwb47Tgqw==/base.apk!libmonochrome.so (???)
  #00  pc 000000000337dce4  /data/app/com.google.android.webview-LmvD2NigrLxQnUwb47Tgqw==/base.apk!libmonochrome.so (???)
  #00  pc 0000000003c53b90  /data/app/com.google.android.webview-LmvD2NigrLxQnUwb47Tgqw==/base.apk!libmonochrome.so (???)
  #00  pc 0000000003c53b44  /data/app/com.google.android.webview-LmvD2NigrLxQnUwb47Tgqw==/base.apk!libmonochrome.so (???)
  #00  pc 0000000003c53acc  /data/app/com.google.android.webview-LmvD2NigrLxQnUwb47Tgqw==/base.apk!libmonochrome.so (???)
  #00  pc 00000000000183d0  /system/lib64/libutils.so (android::Looper::pollInner(int)+832)
  #00  pc 0000000000017ff0  /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+56)
  #00  pc 000000000013ba08  /system/lib64/libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int)+44)
  at android.os.MessageQueue.nativePollOnce (Native method)
  at android.os.MessageQueue.next (MessageQueue.java:339)
  at android.os.Looper.loop (Looper.java:314)
  at android.app.ActivityThread.main (ActivityThread.java:7418)
  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:935)
halfer
  • 19,824
  • 17
  • 99
  • 186

1 Answers1

-1

Required Android developer reading: ANRs

HTTP requests should not be performed on the main (UI) thread of an Android app. You need to use concurrency (threading) to perform any work that is slow, which includes web requests, file I/O, database operations, etc.

zen_of_kermit
  • 1,404
  • 2
  • 13
  • 19