我有这样一个组件:
class PayPalWebView extends Component {
static propTypes = {
payKey: PropTypes.string,
payPalLoginUrl: PropTypes.string,
onNavigationStateChange: PropTypes.func,
}
getPayPalLoginURL = () => this.props.payPalLoginUrl + this.props.payKey
render () {
return (
<WebView
source={{ url: this.getPayPalLoginURL() }}
scalesPageToFit={true}
onNavigationStateChange={this.props.onNavigationStateChange}
/>
)
}
}
我用它来处理我的 React native 应用程序中 PayPal 付款的登录流程。
模拟器内的开发版本可以正常运行并正确打开 PayPal 登录页面。
当我切换到在模拟器内发布构建配置时,它不再工作,只打开 about:blank。
该问题同时出现在 Android 和 iOS 上。然而,今天早上它突然开始在 iOS 上运行,而我没有做任何更改。
我已确认 getPayPalLoginURL
的输出是正确的,并将 WebView
的 source
属性设置为固定值。还尝试了不同的值,例如 { url: "https://example.com"}
以确保它与 PayPal URL 无关,但它再次仅在发布版本上失败。
我还发现了其他 SO 问题,人们建议在 WebView
上设置固定宽度,这也没有用。
非常感谢任何修复或调试的建议。
最佳答案
关于android - 为什么 React Native WebView 会转到 :blank in release build? 左右,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44539860/