2017-05-16 8 views
1

WebView에서 HTTPS 사이트로 연결하면 몇 달 동안 반응이있는 기본 애플리케이션이 있습니다. 이것은 모두 잘 작동했지만 갑자기 WebView가 HTTPS 사이트 대신 빈 페이지를 반환하기 시작합니다. ,React Native : Android WebView가 일부 웹 사이트 및 일부 기기에서 빈 화면을 반환합니다.

  • 빈 화면이 일부 웹 사이트에 대한 반환 (내 사용자의 비는이 문제를보고 한) 단지 내 장치에서 발생 : 디버깅에서

    가 나는 것을 발견했습니다 일부에서는 올바르게 렌더링됩니다. 예 : google.com이 렌더링하고 amazon.com이 빈 화면을 반환합니다.

  • 크롬 관리자의 WebView를 디버깅 할 때마다 해당 웹 사이트 중 하나 (예 : amazon.com)에 GET 호출이있는 것처럼 보입니다.) 1 초 정도 지나면 통화가 취소됩니다.

  • 이러한 사이트는 내 안드로이드 크롬 브라우저에서 열리고 올바르게 렌더링됩니다.

내 기기의 일부 무언가가 WebViews의 일부 웹 사이트, 설정 또는 앱을 차단하고 있습니다. 뭐가 될수 있었는지? 내가 LG의 G4 사용하고

는 API 버전 19 및 23

+1

는, API 버전 –

+0

LG의 G4와 장치의 세부 사항을 언급 API 버전 19, 23 – grmmph

+0

@grmmph 유는 문제가 해결 되었습니까 시도? – starf15h

답변

0

이 때문에 개발 모드에서 개인 SSL 오류이어야에 노력했다. 콘솔 로그가 디버그 모드로 표시되면 Failed to validate the certificate chain, error: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.

이라는 줄을 볼 수 있습니다. 그렇다면 문서의 아무 곳에서도 언급되지 않은 새로운 소품을 추가하십시오. 소품은 ignoreSslError={true}이며 SSL 오류가 발생해도 WebView가 웹 사이트를 강제로로드합니다.

예는 - <WebView ignoreSslError={true} source={{uri: 'https://www.google.com'}} />

소스 : https://github.com/facebook/react-native/pull/9680