728x90
반응형
* react-native-webview 사용 시, android 에서만 app 이 죽어버리는 현상
# 원인
- 아래 소스 중 loading 을 추가하는 라인이 들어가지 않으면 정상적으로 ios / android 모두 잘 작동함
- loading 라인 추가 시, ios 는 정상적으로 동작하나, android 에서는 에러 로그 없이 앱이 충돌나서 종료됨
...
return (
<>
{loading ? <LoadingScreen /> : null} // this line
<WebView
source={source}
style={{flex: 1}}
setSupportMultipleWindows={false}
onLoad={onLoad}
onLoadEnd={onLoadEnd}
onLoadStart={onLoadStart}
onLoadProgress={onLoadProgress}
/>
</>
);
...
# 해결
- 특정 버튼을 클릭하면 navigation 을 통해 webview 를 띄워주는 화면으로 이동하는데, animationEnabled 옵션을 추가하여 해결
...
<Stack.Navigator
screenOptions={{
animationEnabled: Platform.select({
ios: true,
android: false,
}),
...
* reference : https://github.com/react-native-webview/react-native-webview/issues/1915#issuecomment-843490741
728x90
반응형