Youtube在设备上失败,可在模拟器上运行

hris.to

我正在使用以下代码来显示youtube视频:

webViewVideo.hidden = false

webViewVideo.allowsInlineMediaPlayback = true
webViewVideo.mediaPlaybackRequiresUserAction = false

let youtubeIfarme = "<html><body><iframe src=\"http://www.youtube.com/embed/\(youtubeId)?playsinline=1\" width=\"\(CGRectGetWidth(loadedView.frame) - CGFloat(16))\" height=\"\(CGRectGetHeight(webViewVideo.frame))\" frameborder=\"0\" allowfullscreen></iframe></body></html>"

webViewVideo.loadHTMLString(youtubeIfarme, baseURL: NSBundle.mainBundle().bundleURL)

哪个代码在模拟器上可以很好地工作,但是在实际设备上却无法加载。我将以下定义为应用程序传输安全性:

运输安全

奇怪的是,我下载了iOS Helper库,但结果是一样的。此外,永远不会调用委托方法。在他们的github页面上,他们有很多未解决的问题,所以我想这不是我最好的选择。

任何帮助将不胜感激。

编辑

我设法调试了我的HTML页面在模拟器上的UIWebView内部的外观(通过Safari Develop将其连接):

<html><head></head><body><iframe src="http://www.youtube.com/embed/KIiUqfxFttM?playsinline=1" width="359.0" height="350.0" frameborder="0" allowfullscreen=""></iframe></body></html>
hris.to

我必须回答我自己的问题。问题是我以前UITableViewHeader通过实现所需的委托来在内部显示视频

viewForHeaderInSection

heightForHeaderInSection

我只有一个部分,因此仅当section == 0我不知道到底是什么导致该问题时才在那儿返回值,但是可能多次调用该方法导致此问题。我所做的是只需移动的初始化UIWebViewviewWillAppear并将其设置为tableViewHeaderView所以我现在只设置一次,问题就解决了:

override func viewWillAppear(animated: Bool) {
    super.viewWillAppear(animated)

    dispatch_once(&token) {
        self.initHeader()
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Volley 在模拟器上运行但在设备上失败

意图过滤器可在模拟器上运行,但不能在设备上运行

textCapSentences可在模拟器上运行,但不能在真实设备上运行

指南针可在实际设备上运行,但不能在模拟器上运行

LeavesCache.m可在模拟器上运行,但不能在设备上运行

AVAudioPlayer可在模拟器上运行,但不能在真实设备上运行

应用程序可在模拟器上运行,但无法在我的设备上运行

Android Studio应用可在真实设备上运行,但无法在模拟器上运行

应用程序在设备上崩溃,但可在模拟器iOS上运行

今日小部件未在设备上启动(可在模拟器上运行)

应用程序可在模拟器上运行,但不能在设备上运行。错误消息?XCODE

如何修复在模拟器/设备上完美运行但在存档上失败的Xcode构建?

Android Studio应用在真实设备上崩溃,但可在模拟器上运行

Xcode-使用AWS Frameworks的应用程序可在模拟器上运行,但在设备上崩溃

代号一个应用程序可在模拟器上运行,但在iPhone设备上反复崩溃

addSubview在设备上运行,在模拟器上崩溃

Swift HTTP请求可在模拟器上运行,但不能在真实设备中运行

AppCode无法在模拟器和设备上运行

检测在模拟器或真实设备上运行的应用

在iOS设备而不是模拟器上运行代码

Apple Pay可在模拟器上使用,但不能在设备上使用

Cordova:StatusBar插件可在模拟器上使用,但不能在设备上使用

在真实设备上运行模拟器与模拟器

带有Web服务调用的HTML5应用程序可在模拟器上运行,但不能在设备上运行

React Native IOS应用程序Web服务可在模拟器上运行,但不能在真实的IOS设备上运行

Spritekit应用在设备上运行时崩溃,在Swift 3转换后可在模拟器上运行

尝试在Android设备上检索位置...可在模拟器上使用,但不能在真实设备上使用

React Native应用卡在设备的启动屏幕上,但可在模拟器中使用

iOS 8操作扩展图标在设备上为空白(可在模拟器中使用)