[iPhone SDK] iAd 組み込みでひっかかったこと

公開日: : iPad, iPhone ,

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;
	}
}

TestAdvertisement.png

それと、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にしないといけないようだ。
自分はこのために一度無駄にアップデートをすることになった。

まあこういう状態がいつまで続くかが分からないけれども一応参考まで。

関連記事

no image

[iPad SDK] Popover中にTableViewを入れて、タップしたらPopoverを閉じたい

今作っている リズムくん for iPad で、拍子記号を Popover で選択できるようにしよう

記事を読む

Apple Event 2021.04

今回はちょっと驚いた。最近リークが少なくて良き。もしくは自分がSNSから離れているのもある

記事を読む

おんぷちゃん for iPad リアル鍵盤で回答

おんぷちゃん for iPad は五線譜上に表示される音符をスクリーン上のキーボードや、USBやB

記事を読む

[iOS SDK] UIAlertView が消えた後にキーボードが表示される

昔書いたコードで、UIAlertView に setAlertViewStyle で UIAlert

記事を読む

iPhone X simulator が表示されない

dyld: dyld_sim is not compatible with the loaded p

記事を読む

no image

タッチ! アメリカ地図 1.0.1 アップデート

タッチ! アメリカ地図 のアップデート(バージョン 1.0.1)を8月から5ヶ月ぶりにApp Sto

記事を読む

[iOS9] AVSpeechSynthesizer の再生スピードがおかしい

iPhone 6 Plus を iOS9 にアップデートして自作アプリをXcode7 から転送したと

記事を読む

LogLocations 1.3.3 Release

恒例の、年末年始時間があるときの LogLocations のアップデート。久し

記事を読む

アプリアップデート数はApp Store Connectアプリで確認できる

自作アプリのアップデート数をSafari のApp Store Connectで確認しよう

記事を読む

Linking 対応デバイス tomoru

この前 Makuake で出資しそこねた Tomoru が Amazon で ¥ 1,069 + ¥

記事を読む

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

ポモドーロテクニック用物理タイマーならTime Timer

会社ではなかなか自由に時間を使えないが、家で読書や作業をする

DELL 32インチディスプレイ U3223QE 購入

Dell U3223QE は解像度 3840x216

WWDC 2023 Vision Pro発表

2023/6/5 (日本時間 2023/06/06 2AM)のWWD

M1 MacBook Air を Venturaにアップデートする

M1 MacBook Air を macOS Montere

iOS16でaurioTouch の inBufferFramesが1になる

https://developer.apple.com/librar

→もっと見る

PAGE TOP ↑