iOS 9.1 图片和视频未显示在应用程序中

Posted

技术标签:

【中文标题】iOS 9.1 图片和视频未显示在应用程序中【英文标题】:iOS 9.1 Images and Videos not displaying in app 【发布时间】:2015-10-28 05:29:05 【问题描述】:

我开发了一个应用程序,其中有很多照片和视频。 我已经在 xcode6.3 中开发了这个应用程序,它可以完美运行,但现在我已经安装了新的 xcode7.1,当我尝试在 xcode7.1 中运行这个应用程序时,它会完美运行,但我没有看到任何视频和我的应用的图片。

这是我必须在我的代码中做的任何更改还是任何其他问题

【问题讨论】:

您正在使用api调用来加载数据? 是的,我正在使用 API 加载数据。我的视频和图像是从服务器加载的。 那么我怀疑您从 ios9 使用的 http 请求存在问题,苹果不鼓励使用 HTTP 请求作为 Apple 传输安全 (ATS) 的一部分,您使用的是 http 还是 https? 【参考方案1】:

从 Xcode7 开始,Apple 要求所有 url 访问都应该是 HTTPS 作为 Apple 传输安全 (ATS) 的一部分

要克服这个问题,您必须在您的应用程序 info.plist 文件中添加以下项目

【讨论】:

调用 API 时遇到什么错误? 没有出现任何错误。只是视频和图像没有显示在应用程序中。来自 API 的其他信息正常【参考方案2】:

您可以通过将此密钥添加到项目的 info.plist 来绕过此操作

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>

有关 ATS 的更多详细信息,请参阅 NSURLSession/NSURLConnection HTTP load failed on iOS 9 http://ste.vn/2015/06/10/configuring-app-transport-security-ios-9-osx-10-11/

【讨论】:

是的,我已经添加了这个,但仍然无法正常工作。数据加载成功的唯一问题是图像和视频。 以什么格式获取媒体文件记录你得到的响应以及图像键的值是什么

以上是关于iOS 9.1 图片和视频未显示在应用程序中的主要内容,如果未能解决你的问题,请参考以下文章

iOS Google 驱动器“发送副本”未显示应用扩展

iOS 应用退到管理后台 左上角图片未更新(或不显示)

在 iOS 15 中未分配 Alamofire 4.9.1 sessionManager.delegate.sessionDidReceiveChallenge

Flutter:Flutter Firebase Crashlytics 未针对 iOS 显示

从 ios 应用程序播放空气时,外部 srt 字幕未显示在 Apple tv 中

iOS 应用退到管理后台 左上角图片未更新(或不显示)