Android 4.4.3 webview no longer tracks redirects

Our mashup uses web views and does not show up on web views since Android 4.4.4. The app tries to load the HTTPS web view and stays there for about 50 seconds, after which it throws an exception like this Android Fatal signal 11 (SIGSEGV) at 0x636f7d89 (code = 1). How can you track it? ... Obviously we went down the path suggested in this SO not to help much.

In our experiments, we have determined the following

  • The last HTTP request / response (which does the redirect) is the same as for 4.4.2 and 4.4.3. We check this in charles proxy memory.
  • After 4.4.2 redirect, a cart request / response (SSL) is generated, but 4.4.3 doesn't even create a request.
  • Chrome remote debugging doesn't help, the check just shows a blank screen.
  • The Chrome browser version on the device doesn't matter.
  • The redirect code we are using is 302.
  • All previous Android versions work fine

While we originally thought it was a lollipop / ART related bug, it no longer looks like it. Any ideas on how we should proceed?

Actually the crash happens at this location libwebviewchromium.so

Also the tombstone file is at https://gist.github.com/prolificcoder/ebd82081b47640a3cae2

headstone from device - https://gist.github.com/anonymous/2a6a28b2ec976075f587

Logcat Logs - https://slack-files.com/T02RAT9SZ-F0351N4NW-997f5c

+3


source to share


2 answers


It looks like Note3 libwebviwewchromium.so does not match what you can build from AOSP, but x86, so here is the symbolized stack .



Unfortunately, it looks like you've encountered a bug in Blink, the rendering engine used by the WebView. Whatever page you try to load appears to cause the WebView to crash, killing your application along with it. Could you check if loading that particular url in another WebView (recording a trivial WebView application or using a WebView based browser) also crashes? If so, it would be ideal if you could share the url or isolate the offending bit of HTML / CSS / JS and share it.

+2


source


Ok, it turns out that the solution to the problem is in the layout. We didn't have android before : orientation = "vertical" and I think the crash happens when the webview tries to fit everything into a tight space and somewhere when rendering the fonts the app crashes.

Another developer discovered this while trying to create a better reproduction and observed lint warnings in the sample project, oddly enough they did not show up in the original application



<LinearLayout
android:id="@+id/webView_holder"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">

<ProgressBar
    android:id="@+id/progress_bar"
    android:layout_width="fill_parent"
    android:max="100" />

<WebView
    android:id="@+id/webView"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

      

I dont know how it will help any other person, but the lesson learned is that mocking can cause problems in line

0


source







All Articles