doo*_*tin 7 android react-native
我在通过 https 加载任何图像时遇到问题。我正在使用 React Native 0.18,并且实现非常简单,例如在 Amazon 上使用图像:
将工作:
<Image style={styles.avatar} source={{uri: "http://ecx.images-amazon.com/images/I/71JxCVQ5ozL.jpg"}} />
Run Code Online (Sandbox Code Playgroud)
不会工作:
<Image style={styles.avatar} source={{uri: "https://images-na.ssl-images-amazon.com/images/I/41KoE8etwlL.jpg"}} />
Run Code Online (Sandbox Code Playgroud)
还有其他人看过这个吗?
感谢您的帮助。
小智 1
有类似的问题。我的问题是因为某些网站使用的 SSL/TSL 版本以及旧版 Android 操作系统 (TLS v1.2) 的问题。来自特定网站的图像会显示在模拟器上,但不会显示在实际的 Android 设备上。
我使用 Image 的 onError 方法来记录实际的错误。请注意,如果您使用 Web 调试器,您将不会看到此错误。
onError={e => {
console.log(e);
}}
Run Code Online (Sandbox Code Playgroud)查看Android调试桥(ADB)上记录的实际错误,错误是:
“错误:javax.net.ssl.SSLProtocolException:SSL 握手中止:”
显然这是旧版 Android 操作系统的问题。
我按照此处的链接解决了 ssl 问题。现在完美运行
请注意,对于某些版本的 React Native,Image 组件 onError 方法不会在 Android 设备上触发。您可以从这里使用polyfill“react-native-android-image-polyfill”
| 归档时间: |
|
| 查看次数: |
1950 次 |
| 最近记录: |