android - 为什么 ConsentForm.load 有时会导致 android ANR?
问题描述
我主要从Google 的官方 Consent SDK复制并粘贴了代码。
虽然它大部分时间都可以正常工作,但有时会导致 ANR。它正在成为一个主要的 ANR 原因。我假设 ConsentForm.load 必须在 UI 线程上运行。有没有办法解决这个问题?
回复:
输入调度超时(等待发送非键事件,因为触摸窗口尚未完成处理某些在 500.0 毫秒前交付给它的输入事件。等待队列长度:2。等待队列头年龄:6676.6 毫秒。)
"main" tid=1 Native
"main" prio=5 tid=1 Native
| group="main" sCount=1 dsCount=0 obj=0x74f5ef98 self=0xb8114c60
| sysTid=18557 nice=-4 cgrp=default sched=0/0 handle=0xb6f28b34
| state=S schedstat=( 1288189187 190774336 1785 ) utm=89 stm=39 core=0 HZ=100
| stack=0xbe594000-0xbe596000 stackSize=8MB
| held mutexes=
#00 pc 0000000000016a6c /system/lib/libc.so (syscall+28)
#01 pc 00000000000f60bb /system/lib/libart.so (_ZN3art17ConditionVariable4WaitEPNS_6ThreadE+82)
#02 pc 00000000003e4a23 /system/lib/libart.so (_ZN3artL12GoToRunnableEPNS_6ThreadE+502)
#03 pc 00000000000e56dd /system/lib/libart.so (_ZN3art12JniMethodEndEjPNS_6ThreadE+8)
#04 pc 0000000000183663 /data/app/com.google.android.webview-1/oat/arm/base.odex (Java_org_chromium_content_browser_framehost_NavigationControllerImpl_nativeLoadUrl__JLjava_lang_String_2IILjava_lang_String_2IILjava_lang_String_2Lorg_chromium_content_1public_common_ResourceRequestBody_2Ljava_lang_String_2Ljava_lang_String_2Ljava_lang_String_2ZZZ+342)
at org.chromium.content.browser.framehost.NavigationControllerImpl.nativeLoadUrl (NavigationControllerImpl.java)
at org.chromium.content.browser.framehost.NavigationControllerImpl.loadUrl (NavigationControllerImpl.java:67)
at org.chromium.android_webview.AwContents.loadUrl (AwContents.java:496)
at org.chromium.android_webview.AwContents.loadUrl (AwContents.java:375)
at org.chromium.android_webview.AwContents.loadUrl (AwContents.java:380)
at com.android.webview.chromium.WebViewChromium.loadUrl (WebViewChromium.java:227)
at android.webkit.WebView.loadUrl (WebView.java:894)
at com.google.ads.consent.ConsentForm.load (ConsentForm.java:271)
解决方案
推荐阅读
- sql - 如何更改 Oracle View 中的列数据类型?
- c# - UWP 将两个布尔值绑定到 IsEnabled 属性
- java - 十六进制的加密数据:试图解密
- c# - 防止 413 错误请求实体在 ASP.NET 中太大
- android - SafeArgs 未生成所需的操作类
- swift - 是否可以同时运行 2 个独立的 ARSession?
- excel - 如何锁定工作表中的特定范围但不锁定工作表
- here-api - 如何将车站代码翻译成 HERE API Transit ID?
- python - 当 Python 代码输出一个数组或数组列表时。是那些 NumPy 数组还是别的什么?
- powerbi - 按类别划分的 DAX 百分比