我使用Webview与PayPal集成: 代码示例:
<Modal
animationType={"fade"}
transparent={false}
visible={this.state.modalVisible}
onRequestClose={() => {
alert("Modal has been closed")
}}
>
<WebView
source={ require('./PayPalIntegration.html')}
style={{flex: 10, width: width, height: height, margin: 20, alignItems: 'center', alignSelf: 'center'}}
javaScriptEnabled={true}
automaticallyAdjustContentInsets={true}
/>
<TouchableOpacity style={{marginLeft: 10, marginBottom: 10,}}onPress={() => {
this.setState({ modalVisible: false})
}}>
<Text>
X Close
</Text>
</TouchableOpacity>
</Modal>
当我使用Xcode的iOS模拟器,在AndroidStudio的AVD管理器上工作时,它可以正常工作,当我使用react-native run-android
直接到我的设备时也能正常工作。
但是在生成APK并安装后,我只看到Modal
而WebView
无效。
我做了几件事来试图解决这个问题:
我根据JavascriptInterface on Android dont work with APK in release mode
-keepattributes JavascriptInterface
醇>
我必须说我只能在ANDROID上查看它,因为我只能生成APK(没有苹果公司的开发者帐户)
答案 0 :(得分:1)
尝试在AndroidManifest.xml的应用程序标记下添加android:usesCleartextTraffic =“ true”。看起来应该像下面的代码片段。
<application
.........
.........
android:usesCleartextTraffic="true"
.........