2016-09-29 49 views
1

我使用YTPlayerView Youtube API来支持我的应用中的视频。适用于iOS的Youtube API不再支持自iOS 10以来的景观?

在iOS10发布之前,我的应用程序正在将视频正确切换为风景,当视频播放全屏并旋转设备时。

由于我升级到iOS10,视频不再随设备一起旋转,这可以在模拟器(与iOS 9一起使用,不再使用iOS 10)中再现。

我的应用程序只支持肖像模式,但是我可以在全屏播放时将全屏视频切换到风景。

任何提示? 感谢

+0

我认为只有Google员工才能回答您。我没有看到有关您可以在[Data API](https://developers.google.com/youtube/v3/revision_history)和[IOS Helper](https://开发人员)中看到的问题的任何更新版本。 google.com/youtube/v3/guides/ios_youtube_helper#best-practices-and-limitations)。如果您认为这是一个错误,那么请尝试[提交一张票](https://code.google.com/p/gdata-issues/issues/list?q=label:APi-YouTube)了解此问题。 – KENdi

回答

1

由于定向模式在iOS的10的处理方式则有以下选项:

“政治” -correct解决方案

1)让你的应用在所有的在info.plist中

2)方向性模式不允许景观其他地方

的哈克解决方案

每次旋转手机时,都会调用您的AppDelegate,以了解特定窗口的支持方向。因此,如果您可以检测到“当前窗口”内的视图控制器是youtube视频控制器,那么您可以返回所有方向,否则返回portret。

func application(_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?) -> UIInterfaceOrientationMask { 
    guard let topController = window?.topController() else { 
     return application.supportedInterfaceOrientations(for: window) 
    } 

    let className = NSStringFromClass(type(of: topController)) 
    let hackyViewControllers = ["avfullscreenviewcontroller"] 

    if hackyViewControllers.contains(className.lowercased()) { 
     return .allButUpsideDown 
    } else { 
     return .portrait 
    } 
    } 

**,你可以看到我们检查AVFullScreenViewController这正是UIViewController子类负责全屏显示YouTube视频。

相关问题