ミラーリングをチェックするかどうかに関係なく、iOS 5で画面の接続/切断の通知を受け取っている人はいますか?AirPlayを使用する代わりに、ビデオ出力ケーブルをデバイスに接続しない限り、通知が届かないようです。
私のアプリにはMPVolumeViewが提供するAirPlayボタンがあります。タップしてAppleTVを選択できます。AirPlayボタンが青色に変わります。通知がありません。
「再生中」画面(ダブルクリックして一方の端までページを移動)に移動し、AppleTVを選択できます。AirPlayアイコンが青色に変わると確認が取れます。私のアプリは確認を受け取りません(アプリに戻った後でも)。
「再生中」画面に移動し(ダブルクリックして一方の端にページを移動)、AppleTVを選択してミラーリングを選択します。AirPlayアイコンが青色に変わると確認が取れます。私のアプリは確認を受け取りません(アプリに戻った後でも)。
アプリを終了し、ミラーリングをオンのままにします。アプリを再起動します。画面数をチェックするコードがあります。1つしか見えません。
私は何か間違ったことをしていることを望んでいますが、AirPlayを使用しているときに他の人が通知を受け取っていることを確認して確認したいと思います。5.0ベータ期間中にAirPlayの互換性をテストし、これらの問題が発生しなかったことを思い出します。
(AppleのExternalDisplayサンプルは同じように動作しています。)
通知登録に使用するコード:
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(screenDidConnect:)
name:UIScreenDidConnectNotification
object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(screenDidConnect:)
name:UIScreenDidDisconnectNotification
object:nil];
通知が呼び出す必要のあるコード:
- (void) screenDidConnect:(NSNotification *)notification {
if ([[UIScreen screens] count] > 1)
[self myScreenInit:[notification object]];
else {
...
}