这是我们在Firebase上看到的堆栈跟踪:
我们无法重现此问题,但在Firebase上会出现数百/数千次这样的崩溃。奇怪的是,99%的崩溃发生在运行Android 11的Samsung设备上。我们的应用程序还是单进程应用程序,因此不应该运行多个进程。我已经在Chromium问题跟踪器中发布了帖子,但似乎错误与Samsung OS本身而不是Webview有关,因此我也想在这里发布帖子。
似乎有些用户的应用程序进程持续运行数小时,保留此Webview锁。但是,当他们尝试打开我们的应用程序时,它会启动一个新进程而不是现有进程,并导致崩溃。
我正在努力获取更多信息:有人了解为什么这种情况会特别发生在Samsung Android 11上吗?我们的应用程序或用户是否有什么方法来减轻此问题?有其他人遇到过这个问题并找到了解决方法吗?
Fatal Exception: java.lang.RuntimeException
Using WebView from more than one process at once with the same data directory is not supported. https://crbug.com/558377 : Current process [Our package] (pid 28562), lock owner [Our package] (pid 13324)
org.chromium.android_webview.AwDataDirLock.b (AwDataDirLock.java:27)
as0.i (as0.java:30)
as0.b (as0.java:17)
as0.k (as0.java:2)
com.android.webview.chromium.WebViewChromiumFactoryProvider.g (WebViewChromiumFactoryProvider.java:2)
com.android.webview.chromium.WebViewChromium.init (WebViewChromium.java:14)
android.webkit.WebView.<init> (WebView.java:435)
android.webkit.WebView.<init> (WebView.java:355)
android.webkit.WebView.<init> (WebView.java:337)
android.webkit.WebView.<init> (WebView.java:324)
android.webkit.WebView.<init> (WebView.java:314)
[Our code initializing the webview]
android.os.Handler.handleCallback (Handler.java:938)
android.os.Handler.dispatchMessage (Handler.java:99)
android.os.Looper.loop (Looper.java:246)
android.app.ActivityThread.main (ActivityThread.java:8506)
java.lang.reflect.Method.invoke (Method.java)
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:602)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1130)
我们无法重现此问题,但在Firebase上会出现数百/数千次这样的崩溃。奇怪的是,99%的崩溃发生在运行Android 11的Samsung设备上。我们的应用程序还是单进程应用程序,因此不应该运行多个进程。我已经在Chromium问题跟踪器中发布了帖子,但似乎错误与Samsung OS本身而不是Webview有关,因此我也想在这里发布帖子。
似乎有些用户的应用程序进程持续运行数小时,保留此Webview锁。但是,当他们尝试打开我们的应用程序时,它会启动一个新进程而不是现有进程,并导致崩溃。
我正在努力获取更多信息:有人了解为什么这种情况会特别发生在Samsung Android 11上吗?我们的应用程序或用户是否有什么方法来减轻此问题?有其他人遇到过这个问题并找到了解决方法吗?