Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android WebView is crashing while rendering content with latest update to v90.0.4430.82

WebView update v90.0.4430.82

Rendering content inside WebView seems to have some issues. Loading is fine, but displaying on screen is not. It seems that this is random, but consistent. Some URL`s render fine, but others are crashing apps constantly when rendered.

Everything was working fine prior to this update. Iv even rolled back the update from Settings -> Apps -> Android System WebView (on older devices disable Chrome) and again working fine. It seems there is an issue, again, like we saw in March 2020.

Here is the crash report:

E/chromium: [ERROR:aw_browser_terminator.cc(123)] Renderer process (11930) crash detected (code 5).
A/chromium: [FATAL:crashpad_client_linux.cc(667)] Render process (11930)'s crash wasn't handled by all associated  webviews, triggering application crash.
A/libc: Fatal signal 5 (SIGTRAP), code -6 (SI_TKILL) in tid 10907 (oc.showcase.dev), pid 10907 (oc.showcase.dev)
like image 225
Viktor Jovanovski Avatar asked Apr 22 '21 10:04

Viktor Jovanovski


People also ask

How do I fix Android WebView crash?

Updated WebView app should fix crashes You can quickly fix the problem by disabling the Android System WebView app, or updating it via the Play Store or APK Mirror. Users of recent Samsung phones—Galaxy S20 and S21, Note 20, A50 and A70 series, among others—seem to be the most heavily affected.

How do I fix Android WebView update?

How to Fix Chrome and Android System Webview not getting updated? You can reboot your device, check your internet connection, stop auto-updating all apps, clear Google Playstore cache, and storage, leave the beta testing program, and manually update the software.

Is there an alternative to Android System WebView?

Flyperlink is a great alternative app to System WebView.

Is it necessary to update Android WebView?

The short answer to this question is yes, you do need Android System WebView. There is one exception to this, however. If you're running Android 7.0 Nougat, Android 8.0 Oreo, or Android 9.0 Pie, you can safely disable the app on your phone without suffering adverse consequences.


Video Answer


1 Answers

There is an update to WebView to 90.0.4430.91, but for sure this fix will not be introduced until later releases (Beta & Canary do not have this issue fixed yet, but it will be introduced).

The reason for crashing the WebView, and the whole app, is caused by JavaScript code that was injected. Replacing iframe with document.write in the JavaScript fixed the problem, but it is not a long-term solution. The issue with iframe is in the WebView it self.

Also, to prevent crashing the whole app like this, because this crashes are caused when content is rendered in the WebView, you should override onRenderProcessGone in your CustomWebViewClient that extends the WebViewClient. But, again, this solution will prevent rendering issues and crashing the whole app only for API level 26+. There is no similar thing below API 26 thus, this issue will cause crash to the whole app, not just the webView.

Temporary (as lest resort) solution it will be to detect the version code of the WebView, and if is the bugged one (v90.0.4430.82), not to initialize the WebView at all, or inject some other tested URL (HRML with JS) that will not cause crash.

Here you can find bug ticket, description and responses: https://bugs.chromium.org/p/chromium/issues/detail?id=1201228&q=component%3AMobile%3EWebView&can=2

like image 161
Viktor Jovanovski Avatar answered Oct 28 '22 10:10

Viktor Jovanovski