我有一个MPMoviePlayerController子类,应该在播放完成后显示控件.我已将响应者附加到MPMoviePlayerPlaybackDidFinishNotification通知并尝试按如下方式设置控件样式:
[self setControlStyle:MPMovieControlStyleEmbedded];
Run Code Online (Sandbox Code Playgroud)
这不起作用.从本质上讲,在视频结尾我想控制显示.如何以编程方式显示控件?
注意:控制器未处于全屏模式.
我正在我的应用程序中实现自动续订订阅,我想知道是否有一种方法可以模拟订阅期何时用完并创建新事务.
该应用程序连接到在线服务,该服务始终跟踪用户以及他们是否具有"高级访问权限".据我所知,有两种方法可以检测事务的发生时间.
该应用程序已启动并且updatedTransactions:在我的PaymentObserver中作为SKPaymentTransactionStateRestored调用.然后,我从应用程序将此信息发送到更新订阅的服务器.
我经常检查App Store API并将"最新收据"与我数据库中的收据进行比较.如果有新的,则已进行交易并延长订阅.
无论哪种方式,我都需要模拟订阅周期用完并且App Store进行新的交易.我该怎么做呢?
我的应用程序出于某些原因仅支持纵向方向.
但是,在某些情况下,我需要显示来自UIWebView(带video标签)的视频,如果用户可以纵向或横向查看它,那将会很不错.
控制器配置如下:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
return UIInterfaceOrientationIsPortrait(toInterfaceOrientation);
}
Run Code Online (Sandbox Code Playgroud)
结果:视频仅以纵向模式播放(确定,非常期待).
我尝试过:
- 设置此项以在用户启动视频
时支持所有方向- 当视频停止时,返回"仅限肖像"
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
// autorotationEnabled is toggled when a video is played / stopped
return autorotationEnabled ? YES : UIInterfaceOrientationIsPortrait(toInterfaceOrientation);
}
Run Code Online (Sandbox Code Playgroud)
结果:横向模式可用(太棒了!)但是如果用户在横向播放时点击"完成",则一旦玩家被解雇(不太好),前一个视图将以横向模式显示.
当玩家被解雇时,有没有人知道如何防止控制器以横向模式显示?
(使用UIDevice的私有方法setInterfaceOrientation不是一个选项)
iphone ×2
app-store ×1
autorotate ×1
cocoa-touch ×1
html5-video ×1
ipad ×1
objective-c ×1
storekit ×1