読者です 読者をやめる 読者になる 読者になる

TechNote

とあるエンジニアのただのメモ

アプリ広告初心者必見! iPhoneアプリに iAdバナー と appCcloudを実装する方法

Xcode Objective-C

アプリエンジニアのマネタイズとして代表的な主題の2つの方法をメモに残す。少しだけ工夫点も盛り込んでます。
f:id:kojikoji75:20141227142728j:plain
photo credit: peddhapati via photopin cc
サマリー

1.iAdバナーの設置方法
2.appCcloudの設置方法


1.iAdバナーの設置方法

Main.StoryboardにiAdView(パーツ)を配置した後にコードを補足していくのが作業の流れとしてしっくりくる人もいると思うが、順番はどうでもよい。コードを先に書いたほうが作業手順(画面を行き来する回数)は少なく済む(と思う)。

(1)ライブラリを使用するための設定をする

General -> linked Freamworks and Libraries
で「iAdframework」を追加する。
f:id:kojikoji75:20141227143006p:plain

(2)コードを書いていく

ViewController.hに下記を記述

#import <iAd/iAd.h>

ViewController.mに下記を記述

#import <iAd/iAd.h>
@implementation ViewController
{
    IBOutlet ADBannerView *add_test;//広告表示ビュー
}

ViewDidLoad部に下記を記述

//iAd
add_test.currentContentSizeIdentifier=ADBannerContentSizeIdentifierPortrait;
add_test.delegate=self;

自分の場合は取得成功時のみ表示させるようにしてみた。そうしないと取得できなかった場合に白い空白部分が残ったため。

- (void)bannerViewDidLoadAd:(ADBannerView *)banner
{
    NSLog(@"iAd取得成功");
    add_test.hidden=NO;
}
- (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error
{
    NSLog(@"iAd取得失敗");
    add_test.hidden=YES;
}

また、画面サイズが3.5インチ(iPhone4sなど)では、iAdバナーを表示させた場合に画面の広さが足りなくなってしまうような場合がある。このような場合にiAdバナーを表示させないように条件分岐させた。

- (void)bannerViewDidLoadAd:(ADBannerView *)banner
{

    CGSize screenSize = [[UIScreen mainScreen] bounds].size;
    if(screenSize.height==480){
        //3.5インチではiAd非表示にする
        add_test.hidden=YES;
    }else{
        add_test.hidden=NO;
    }
    NSLog(@"iAd取得成功");
}

(3)パーツの配置・関連付け

最後にMain.storyboardでiAdBannerViewを配置し、上記コードとの関連付け作業を行う。
f:id:kojikoji75:20141227145219p:plain


ちなみにiTunesConnectへアップするスクリーンショットに、iAdバナーを表示させた状態のスクリーンショットをアップするとリジェクトされるので注意が必要。(iPhoneデベロッパー界隈では結構有名な話だが、一応自分で試してみて確かにリジェクトされることを確認した)




2.appCcloudの設置方法

(1)ライブラリを使用するための設定をする

https://app-c.net/からappc_cloud_ios_xxx.zipをダウンロード後、解凍し「appc_cloud_2.0.0_x6」(開発環境がXcode6の場合)のフォルダごとプロジェクト直下へドラッグ&ドロップで追加する。(「Copy items...」のチェックはON)

XcodeのGeneral -> Linked Frameforls and Librariesに下記を追加。

  • CoreTelephony.framework
  • StoreKit.framework

f:id:kojikoji75:20141227144126p:plain

XcodeのInfo -> URL Typesに、appCcloud登録時に得られるURLスキーマを追加。

f:id:kojikoji75:20141227144410p:plain


(2)コードを書いていく

ViewController.hに下記を記述。

#import "appCCloud.h"
- (IBAction)tapButton:(UIButton*)sender;


ViewController.mに下記を記述

#import "appCCloud.h"
-(IBAction)tapButton:(UIButton *)sender
{
    //appCcloud のリストビュー表示用
    [appCCloud openWebView];
}

viewDidLoad内

//app c cloud用
[appCCloud setupAppCWithMediaKey:@"xxxxxxxxxxxxxxxxx" option:APPC_CLOUD_AD];

上記の"xxxxxxxxxxxxxxx..."の部分にはappCcloudで得たメディアキーを。

// リストビュー表示中確認
- (BOOL)check
{
    return [appCCloud showingWebView];
}

(3)関連付け

最後にMain.storyboardでボタンとアクションの関連付け作業を行う


レビュー時点でappCcloudのサイトで、該当アプリの状況を「登録申請中」状態にしておかないとリジェクトされることに注意。



あわせて読みたい

Xcodeでオブジェクトの上下配置を前面移動/背面移動する3つの方法 - TechNoteXcodeでオブジェクトの上下配置を前面移動/背面移動する3つの方法 - TechNote

Xcodeで、エクセルやパワポみたいにオブジェクトを「前面に移動」「背面に移動」するにはどうしたらいいか?3通りのやり方があったのでメモを残す。photo cr...

Xcodeで角丸設定cornerRadiusがきかない場合の対応方法 - TechNoteXcodeで角丸設定cornerRadiusがきかない場合の対応方法 - TechNote

photo credit:camflanviaphotopinccvar show_width = document.documentElement.clien...

Xcode iOSシミュレータで enable to run app in Simulator エラー - TechNoteXcode iOSシミュレータで enable to run app in Simulator エラー - TechNote

photo credit:Sean MacEnteeviaphotopinccサマリー1.現象2.対応方法3.リセットはこんなときも役に立ったvar show_...



詳解 Swift

詳解 Swift

Swift離陸ガイド

Swift離陸ガイド