[iPhone SDK] iAd 組み込みでひっかかったこと
iAd は iAd Programming Guide を読んだりすればとても簡単にアプリへの組み込みが可能。
ただ、いくつかはまりポイントがあるのでメモを書いてみる。
まず、iAd は iAd が始まっている国でなければ表示してはいけない。
自分は AdMob と同じ感じでいつでも表示するコードを書いていたが、これにより一度App StoreでのレビューでRejectされてしまった。
iAd が使えるかどうかは ADBannerViewDelegateで知ることができる。コード的にはこんな感じだろうか。
自分は画面の下端に置いているので、最初は画面外に出しておいて、bannerViewDidLoadAd:されたら画面をずらして可視にしている。
App Storeのレビューアーからのサンプルコードもこんな感じだったような。
#pragma mark ADBannerViewDelegate - (void)bannerViewDidLoadAd:(ADBannerView *)banner { if (self.bannerIsVisible) { // すでにロードされている } else { // 50ドット上にずらして画面を可視にする [UIView beginAnimations:@"animateAdBannerOn" context:NULL]; banner.frame = CGRectOffset(banner.frame, 0, -50); [UIView commitAnimations]; self.bannerIsVisible = YES; } } - (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error { if (self.bannerIsVisible) { // 失敗したので画面外に出す [UIView beginAnimations:@"animateAdBannerOff" context:NULL]; banner.frame = CGRectOffset(banner.frame, 0, 50); [UIView commitAnimations]; self.bannerIsVisible = NO; } }
それと、iAd は App Store で公開されるまでは Test Advertisement を表示する(上がその画面キャプチャ)が、これを表示した状態でスクリーンキャプチャをとって App Storeに提出するとRejectされてしまう。
自分は上記2つの理由で最初はRejectされていた。
このため、スクリーンキャプチャをとるときには一時的に iAd を表示しない状態にする必要がありそうだ。
間違って非表示状態でそのままSubmitしてしまわないように気をつけよう。
さらに、実装を完了して無事公開されても iTunes Connect の方で iAd をEnableにしておかないと、iAd は表示されないようだ。
しかも、Ready for Sale になった後では Enable にできず、Submit して Ready for Sale になるまでの間に Enableにしないといけないようだ。
自分はこのために一度無駄にアップデートをすることになった。
まあこういう状態がいつまで続くかが分からないけれども一応参考まで。
関連記事
-
iPhone 4S は Bluetooth 4.0 採用。G-SHOCK GB-6900 が使えるとよいのだが
アップル - iPhone - 比較 によると確かに iPhone 4S から Bluetooth
-
[iOS SDK] iPad 専用アプリをiPhoneでも使えるようにする
iPad 初代やiPad2の頃は、iPhoneとiPadの画面サイズがかなり異なり、また
-
iPhone開発のネタ帳: コールアウト代用部品を作る
Map Kit を使うと、地図上に吹き出しのようなものを表示できる。この吹き出しのようなものをコ
-
[iPhone SDK] 処理を遅延実行する方法
処理を少し遅らせて実行したいときがたまにある。 そういうときには、NSObjectの - (voi
-
[iPhone SDK] UILabel からポップアップメニューを表示してみる
今作っているアプリに UILabel を複数置いた画面があるが、その UILabelたちは編集
-
Beginning iPhone 3 Developmentの続編が出るらしい
iPhone開発の入門書としていま一番良いと個人的に思っている、Apressの Beginning
-
[iTunes Connect] Price End Date には安売りの終わる次の日を入れるべき
App Store では、ランキングに現れないアプリは存在しないも同然、という話がある。 App
-
[iPhone SDK] Apple Push Notifiction Service (APNs)対応 その1
Apple Push Notification Service (以下、APNs) を使ったiPho
-
とりあえず iPhone 6 Plus に対応する
iPhone 6 Plus は対応したアプリでないと画面が自動的に拡大されてらくらくホンぽい表示にな
-
そのまま使えるiPhoneゲームプログラム
書店で見かけて立ち読みしてみた。 ゲームで使いそうな小技が紹介されている。ゲーム向けなので、Open