私は、ユーザーがさまざまなビデオを見ることができるアプリでコーディングしています。ボタンタップでビデオをフルスクリーンで開き、ユーザーは再生コントロールを使用してウィンドウのサイズを変更できます。私が抱えている問題は、ユーザーがホットスポットを介してインターネットを共有しているときに、アプリの上部に青いバーが表示されることです。この時点でウィンドウのサイズを変更すると、AVKit フレームワークでクラッシュが発生します (私は信じています)。Swift 2.3、Xcode 7.3.1 を使用。私の電話、iPhone 6s は iOS 10 を使用しており、iOS 9 iPhone 6 Plus でも同じ問題を試しました。
クラッシュ:
Terminating app due to uncaught exception 'UIViewControllerHierarchyInconsistency', reason: 'child view controller:<AVFullScreenPlaybackControlsViewController: 0x102933000> should have parent view controller:<AVPlayerViewController: 0x10212d800> but actual parent is:<AVFullScreenViewController: 0x10884d900>'
私のコード:
private let playerController = AVPlayerViewController()
private var player: AVPlayer!
private func playVideo(media: Media) {
player = AVPlayer(URL: NSURL(string: media.url)!)
playerController.player = player
presentViewController(playerController, animated: true, completion: {
self.playerController.player?.play()
self.playerController.delegate = self
})
}
携帯電話でインターネットを共有していない場合 (青いバーがない場合) は、問題なく動作します。この青いバーをなんとか隠した人、または同様の問題を経験した人はいますか?