图像无法在 Android 7.0 (API 24) 上呈现
Posted
技术标签:
【中文标题】图像无法在 Android 7.0 (API 24) 上呈现【英文标题】:Images don't render on Android 7.0 (API 24) 【发布时间】:2018-08-09 16:26:45 【问题描述】:我遇到了这个问题,还没有找到解决方案。
事情是这样的:我有这个应用程序,我需要渲染一些图像。是一个流媒体应用,所以必须渲染播放列表缩略图、视频缩略图、播放列表封面等。
我可以在 6.0(api 23)、7.1(api 25) 和 8.0(api 26) 等版本中完美地渲染这些图像。但是,在 7.0(api 24) 版本中,并且仅在此版本中,不会渲染图像
代码是这样构建的:
我收到一组要在地图函数中渲染的播放列表,然后我将每个播放列表发送到一个名为 HorizontalSquareList 的组件
<HorizontalSquareList
key=item.id
data=item.playlists
horizontal
showsHorizontalScrollIndicator=false
navigation=this.props.navigation
/>
在 HorizontalSquareList 里面,我有一个叫做 renderImage 的函数
imageStyle:
width: width * 0.27,
height: 100,
borderRadius: 2,
,
function renderImage(item)
if (item.thumbnail)
return (
<AsyncImageAnimated
key=item.id
style=imageStyle
source= uri: item.thumbnail
resizeMode='cover'
placeholderColor='#cfd8dc'
imageKey=`squareImg$item._id`
/>
);
// else, render an default thumbnail stored in server
一个奇怪的事情是,存储在服务器中的默认缩略图会被渲染,但来自 api 的缩略图不会。
这就是问题所在。仅在 android 7.0 上不会渲染这些图像。在其他版本中,它完全没问题。是API的问题吗?代码? Android API?
提前谢谢各位! :)
【问题讨论】:
【参考方案1】:如果将来有人来到这里,我设法通过在我收到的图像中将“https”替换为“http”来解决问题。我不知道为什么会这样。
【讨论】:
以上是关于图像无法在 Android 7.0 (API 24) 上呈现的主要内容,如果未能解决你的问题,请参考以下文章
Android 7.0 以上 Charles 和 Fiddler 无法抓取 HTTPS 包的解决方式
仅从 Android 7.0 (Nougat) 开始支持默认接口方法
适配整理Android 7.0 调取系统相机崩溃解决android.os.FileUriExposedException