Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Using WebView in Android v7.0 hangs the app. #13335

Closed
chiraggshah opened this issue Apr 6, 2017 · 9 comments
Closed

Using WebView in Android v7.0 hangs the app. #13335

chiraggshah opened this issue Apr 6, 2017 · 9 comments
Labels
Resolution: Locked This issue was locked by the bot.

Comments

@chiraggshah
Copy link
Contributor

Description

What I did: Tried to open WebView in Android Emulator v7.0.0 (API 24)
What I expected to happen: Open the url provided in a webview
What actually happens: The app hangs without loading the webpage

I had used Genymotion Emulator for this.

Some of the errors which I was able to see while running adb logcat were:

04-06 04:03:11.218  1802  1833 W unknown:ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTGroupViewManager
04-06 04:03:11.219  1802  1833 W unknown:ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTGroupShadowNode
04-06 04:03:11.223  1802  1833 W unknown:ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTShapeViewManager
04-06 04:03:11.223  1802  1833 W unknown:ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTShapeShadowNode
04-06 04:03:11.223  1802  1833 W unknown:ViewManagerPropertyUpdater: Could not find generated setter for class com.facebook.react.views.art.ARTTextViewManager

04-06 04:03:12.395  1802  1862 E chromium: [ERROR:gles2_cmd_decoder.cc(2167)] [.CommandBufferContext.RenderWorker-0xd517d5c0]GL ERROR :GL_INVALID_OPERATION : GLES2DecoderImpl::DoBindTexImage2DCHROMIUM: <- error from previous GL command

Full logs at : https://gist.github.com/chiraggshah/b57b0eb6c67cd5ee4d9acc4033b809a4

Reproduction Steps and Sample Code

A simple application using WebView inside index.android.js should be able to reproduce this

import React, { Component } from 'react';
import { AppRegistry, WebView } from 'react-native';

export default class SampleAndroidTest extends Component {
  render() {
    return (
      <WebView
        source={{uri: 'https://www.facebook.com'}}
        style={{
          backgroundColor: 'rgba(255,255,255,0.8)',
          height: 300,
        }}
        scalesPageToFit={true}
      />
    );
  }
}

AppRegistry.registerComponent('SampleAndroidTest', () => SampleAndroidTest);

Additional Information

  • React Native version: I tried on 0.41.0 and 0.43.0, but I think it should be reproducable on other versions as well
  • Platform: Android
  • Development Operating System: MacOS
@chiraggshah
Copy link
Contributor Author

chiraggshah commented Apr 6, 2017

Found this in Android Docs for Android N(7.0) https://developer.android.com/about/versions/nougat/android-7.0.html#webview
Maybe its related to this and maybe thats what the chromium in the error DoBindTexImage2DCHROMIUM means.

@hey99xx
Copy link

hey99xx commented Apr 6, 2017

Did you also test on Android devices lower than 7.0? For example what happens with Lollipop or Marshmallow?

@chiraggshah
Copy link
Contributor Author

@hey99xx : Yes, I had tried on Android devices lower than 7.0, and they work fine.

@ghidinelli
Copy link

ghidinelli commented Apr 7, 2017

@hey99xx I can confirm this is happening on older versions of Android. It's related specifically to the Android System Webview update (v 57.0.2987.132, Updated May 29, 2017). Our app was working before installing, installed JUST that update, now it hangs.

I now have reports from:

  • Android 7 (2017-03-01 security)
  • Android 6 (2016-08-1 security)

I'm personally testing on Android 5.1 with security patch level 2016-03-01.

This must be a chrome update problem.

@ghidinelli
Copy link

Google released a 126 version and then a couple days later the 132 version above. I believe the problem exists in both as 132 was just a security fix. Here is the changelog from the previous stable 108 to 126: https://chromium.googlesource.com/chromium/src/+log/57.0.2987.108..57.0.2987.126?pretty=fuller&n=10000

Here's a bug I logged with Chromium: https://bugs.chromium.org/p/chromium/issues/detail?id=709507

@hey99xx
Copy link

hey99xx commented Apr 7, 2017

@ghidinelli In your bug report to Chromium, you've written

Steps to reproduce:
Update to Android System Webview 57.0.2987.126 or .132

So do you think it's between 126 -- 132 or 108 -- 126. I am confused reading your post here and the bug report. Anyways thanks for notifying, I will also try to test this, as we also use webviews in react-native.

@ghidinelli
Copy link

@hey99xx I think it's between 108-126 because the 126-132 was just a security regression patch. We only started getting reports of this about 7-8 days ago and that's when .126 started rolling out.

FWIW, uninstalling the update does restore working behavior.

@hey99xx
Copy link

hey99xx commented Apr 7, 2017

Looks to be same issue https://jira.appcelerator.org/browse/TIMOB-24540 ( at least same stack trace )

@hramos hramos added the Icebox label Jul 25, 2017
@hramos
Copy link
Contributor

hramos commented Jul 25, 2017

Hi there! This issue is being closed because it has been inactive for a while. Maybe the issue has been fixed in a recent release, or perhaps it is not affecting a lot of people. Either way, we're automatically closing issues after a period of inactivity. Please do not take it personally!

If you think this issue should definitely remain open, please let us know. The following information is helpful when it comes to determining if the issue should be re-opened:

  • Does the issue still reproduce on the latest release candidate? Post a comment with the version you tested.
  • If so, is there any information missing from the bug report? Post a comment with all the information required by the issue template.
  • Is there a pull request that addresses this issue? Post a comment with the PR number so we can follow up.

If you would like to work on a patch to fix the issue, contributions are very welcome! Read through the contribution guide, and feel free to hop into #react-native if you need help planning your contribution.

@hramos hramos closed this as completed Jul 25, 2017
@facebook facebook locked as resolved and limited conversation to collaborators Jul 25, 2018
@react-native-bot react-native-bot added the Resolution: Locked This issue was locked by the bot. label Jul 25, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Resolution: Locked This issue was locked by the bot.
Projects
None yet
Development

No branches or pull requests

5 participants