iAd フレームワークを既存のアプリケーションに追加しています。アプリケーションはポートレートのみで、iPhone のみです。iOS 6 では、シミュレーターと iPhone 5 の両方ですべてが実行されています。ただし、iOS 5 では、シミュレーターと iPhone 4 の両方で失敗します。次の例外がスローされます。
'NSInternalInconsistencyException', reason: 'currentContentSize must be one of the requiredContentSizes; 'ADBannerContentSizePortrait' is not in {(
ADBannerContentSizeLandscape
)}'
例外は次の行でスローされます。
iAdBannerView.currentContentSizeIdentifier = ADBannerContentSizeIdentifierPortrait;
このように横向きのバナー以外を表示する方法はありません。どこかで何か間違った設定をしているに違いないと思いますが、どこにあるのかわからず、iOS 6 で問題なく動作することに興味があります。
ここで何か助けていただければ幸いです。ありがとう!
更新: 十分な担当者ポイントがないため、これにはお答えできません。しかし、私はそれを修正しました:
背景: ADBannerView の周りに Kobold2D ラッパーを使用しています。そのクラスである KKAdBanner は、エラーの原因となっている回線を実際に呼び出しているクラスです。横長のサイズのみを許可するように ADBannerView を構成することで、この呼び出しに先立っていたことが判明しました。これは構成の問題であり、解決できます。
もちろん、iOS 6 でこれが機能した理由はまったくわかりませんが、まあ :-)