公司需要要开发iPad的App,说需要支持分屏、画中画播放视频等操作。
-
分屏:两个App可以同时展示在界面上,效果如下:
-
分屏的条件
1.必须是在iPad上,系统版本>=iOS9。
2.必须使用LaunchScreen.storyboard来做启动图
3.iPad的打开“设置”>“常规”>“多任务”中的“滑动”和“拆分视图”
4.App必须支持四个方向。
-
各种iPad型号,方向和拆分视图配置的大小等级
方法调用,也可以说在分屏时调用的方法
1.当用户移动分隔符时,系统使用[applicationWillResignActive:]
协议方法调用您的app委托对象。
2.如果用户将分隔器一直移动到屏幕边缘以关闭应用程序,系统将调用您的[applicationDidEnterBackground:]
协议方法。
我们可以根据不同的情况来保存当前App的状态。
-
画中画(PiP),效果如下:
苹果的原生的画中画支持App退到后台,小窗口仍然在播放。
- pip的条件
1.xcode的project’s target ~> Capabilities ~> Background Modes ~> Audio, AirPlay and Picture in Picture勾选
2.AVAudioSession
的Category必须设置为[AVAudioSessionCategoryPlayback]
.
3.必须使用AVKit的[AVPlayerViewController]
类或者AVKit的[AVPictureInPictureController]
和[AVPlayerLayer]
,
4.又或者使用WKWebView,WebKit支持PiP,请将[allowsPictureInPictureMediaPlayback]
关联的Web视图实例的属性设置为NO
。
5.iPad需打开设置>常规>多任务>多任务与程序坞中画中画的功能。
- 重要
画中画是Apple打算始终受用户控制的功能。仅响应用户的明确请求而调用画中画。如果应用程序以不受用户直接指示的方式调用画中画,特别是当应用程序移动到后台时,应用程序将被App Store拒绝。