我的应用程序在Play商店上运行了好几年。
主要活动的布局XML包含WebView
。
最近,该应用已在启动时崩溃(但并非总是如此,并非在每台设备上都崩溃)。
Logcat在RuntimeException
上显示有关{strong>未找到软件包:com.android.chrome 的WebViewFactory
。
我没有明确使用此系统类。无论WebView
是XML布局的一部分还是以编程方式实例化,都会发生崩溃。没有try
/ catch
会有所帮助。
06-26 18:22:52.560 1363 1409 I ActivityManager: Displayed com.my.app/.MyActivity: +46ms
06-26 18:22:52.829 1363 6524 D ActivityManager: # addPackageDependency # packageName=com.android.chrome -> proc: ProcessRecord{e72ceb3 9789:com.my.app/u0a214}
06-26 18:22:52.839 9789 9789 I WebViewFactory: Loading com.android.chrome version 75.0.3770.101 (code 377010137)
--------- beginning of crash
06-26 18:22:52.903 9789 10122 E AndroidRuntime: FATAL EXCEPTION: Thread-2
06-26 18:22:52.903 9789 10122 E AndroidRuntime: Process: com.my.app, PID: 9789
06-26 18:22:52.903 9789 10122 E AndroidRuntime: java.lang.RuntimeException: Package not found: com.android.chrome
06-26 18:22:52.903 9789 10122 E AndroidRuntime: at android.webkit.WebViewDelegate.getPackageId(WebViewDelegate.java:164)
06-26 18:22:52.903 9789 10122 E AndroidRuntime: at xZ.a(PG:16)
06-26 18:22:52.903 9789 10122 E AndroidRuntime: at xq.run(PG:14)
06-26 18:22:52.903 9789 10122 E AndroidRuntime: at java.lang.Thread.run(Thread.java:764)
06-26 18:22:52.908 9789 9789 I cr_LibraryLoader: Time to load native libraries: 3 ms (timestamps 7584-7587)
06-26 18:22:52.909 9789 10123 D OSTracker: OS Event: crash
06-26 18:22:52.844 1363 6524 D ActivityManager: # addPackageDependency # packageName=com.android.chrome -> proc: ProcessRecord{e72ceb3 9789:com.my.app/u0a214}
06-26 18:22:52.911 1363 3290 W ActivityManager: Force finishing activity com.my.app/.MyActivity
(为清楚起见,我在上面的日志中用com.my.app
替换了我的软件包名称。)
这些行都不是我自己的Log字符串。都是系统的。
崩溃的设备确实安装了Chrome APK,并且WebView实现被定义为Chrome。
在我看来,在应用启动时, com.android.chrome 依赖项尚未就绪,系统无法加载并将其绑定到我的进程。
>有没有办法强制预加载依赖项?
谢谢。