Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios Youtube在设备上失败,在模拟器上工作_Ios_Swift_Youtube - Fatal编程技术网

Ios Youtube在设备上失败,在模拟器上工作

Ios Youtube在设备上失败,在模拟器上工作,ios,swift,youtube,Ios,Swift,Youtube,我正在使用以下代码显示youtube视频: webViewVideo.hidden = false webViewVideo.allowsInlineMediaPlayback = true webViewVideo.mediaPlaybackRequiresUserAction = false let youtubeIfarme = "<html><body><iframe src=\"http://www.youtube.com/embed/\(youtub

我正在使用以下代码显示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)
webViewVideo.hidden=false
webViewVideo.allowsInlineMediaPlayback=true
webViewVideo.mediaplaybackrequiresseraction=false
让youtubeIfarme=“”
webViewVideo.loadHTMLString(youtubeIfarme,baseURL:NSBundle.mainBundle().bundleURL)
哪种代码在模拟器上运行得很好,但在实际设备上却无法加载。我将以下定义为应用程序传输安全:

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

我们将非常感谢您的帮助

编辑

我在模拟器上调试了我的html页面在UIWebView中的外观(通过Safari Develop连接):


您的模拟器和设备的操作系统版本是什么?它是同一个操作系统版本吗?不同的UIWebView可能会触发错误

也检查一下这个


我得回答我自己的问题。问题是,我过去常常通过实现所需的委托来显示
UITableViewHeader
中的视频:

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

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

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

不幸的是没有帮助。设备是iPhone6和iOS9.2.1,模拟器是9.2
override func viewWillAppear(animated: Bool) {
    super.viewWillAppear(animated)

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