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 15 中未分配 Alamofire 4.9.1 sessionManager.delegate.sessionDidReceiveChallenge
Flutter:Flutter Firebase Crashlytics 未针对 iOS 显示