#react-native #react-native-webview
Вопрос:
Могу ли я получить доступ к объекту окна приложения react-native-webview? Причина, по которой я пытаюсь это сделать, заключается в том, чтобы выйти из приложения Android, когда я не могу вернуться.
Вот мой код. Ребята, вы можете помочь мне с какими-нибудь подсказками?
export default function App (){
useEffect(()=>{
setCurrentUrl('https://google.co.kr')
setTimeout(() => {
SplashScreen.hide();
}, 1000);
if (Platform.OS === 'android') {
BackHandler.addEventListener('hardwareBackPress', goback);
return(
BackHandler.removeEventListener('hardwareBackPress')
)
}
},[])
const [currentUrl, setCurrentUrl]=useState(null)
const webViewRef = useRef(null)
const goback = () => {
webViewRef.current.goBack();
return true
};
const onNavigationStateChange =(webViewState) =>{
setCurrentUrl(webViewState.url)
}
return (
<View style={{backgroundColor:'#fff',flex:1}}>
<SafeAreaView style={{flex:1,}}>
<WebView
style={{flex:1,}}
originWhitelist={['*']}
ref={webViewRef}
source={{ uri: currentUrl }}
onNavigationStateChange={onNavigationStateChange}
/>
</SafeAreaView>
</View>
);
}
Ответ №1:
Вы можете использовать API postMessage для связи между вашим приложением и вашей веб-страницей.