nendSDK 設定マニュアル iOS...

19
nendSDK 設定マニュアル iOS 1 nendSDK 設定マニュアル iOS ver2.0.1 201349

Transcript of nendSDK 設定マニュアル iOS...

Page 1: nendSDK 設定マニュアル iOS ver2.0img.blog.appbank.net/files/appbanknetwork_nendSDK2.0.1.pdfnendSDK 設定マニュアル iOS 5 【重要】 インフォメーションボタンについて

nendSDK 設定マニュアル iOS

1

nendSDK 設定マニュアル

iOS ver2.0.1

2013年4月9日

Page 2: nendSDK 設定マニュアル iOS ver2.0img.blog.appbank.net/files/appbanknetwork_nendSDK2.0.1.pdfnendSDK 設定マニュアル iOS 5 【重要】 インフォメーションボタンについて

nendSDK 設定マニュアル iOS

2

更新履歴更新履歴更新履歴更新履歴

バージョンバージョンバージョンバージョン 公開日付公開日付公開日付公開日付 更新内容更新内容更新内容更新内容

iOS_ver 1.2.0 2011/8/16 -

iOS_ver 1.2.1 2011/8/24 シミュレータ向け不具合の修正

iOS_ver 1.2.2 2012/3/27 デバイス ID(UDID)取得の停止

サイズ変更(320×48)から(320×50)の View を生成するように変更

iOS_ver 1.2.3 2012/4/11 広告取得時に不必要なメモリをリリースしない不具合の修正

iOS_ver 1.3.0 2012/6/25 広告受信成功通知の追加

広告受信エラー通知の追加

定期ロード中断の追加

定期ロード再開の追加

iOS_ver 1.3.1 2012/8/31 WebView タイプの場合ローテーションが管理されない不具合修正

iOS_ver 1.3.2 2012/9/20 iOS SDK 6 & iPhone 5 (armv7s) 対応

iOS_ver 2.0.0 2013/4/2 ターゲティング広告配信及びオプトアウト機能の実装

広告識別子 Advertising Identifier (IDFA) 利用開始

ログ出力設定プロパティ追加

その他不具合修正

iOS_ver 2.0.1 2013/4/9 特定のライブラリ使用時に重複エラーが起きる問題に対応

Page 3: nendSDK 設定マニュアル iOS ver2.0img.blog.appbank.net/files/appbanknetwork_nendSDK2.0.1.pdfnendSDK 設定マニュアル iOS 5 【重要】 インフォメーションボタンについて

nendSDK 設定マニュアル iOS

3

目目目目次次次次

◆nendSDK iOS について ..................................................................................................................................... 4

【重要】インフォメーションボタンについて ...................................................................................................... 5

◆組み込み方法 ...................................................................................................................................................... 6

○プロジェクトへの nendSDK 追加 .................................................................................................................. 6

○必須フレームワークの追加 ............................................................................................................................. 7

○ビルド .............................................................................................................................................................. 9

◆NADView の内容 .............................................................................................................................................. 10

○メソッド ........................................................................................................................................................ 10

○プロパティ ..................................................................................................................................................... 10

○Delegate ........................................................................................................................................................ 10

◆実装 ................................................................................................................................................................... 11

○ヘッダファイル ............................................................................................................................................. 11

(1) delegate 準拠 .......................................................................................................................................... 11

○実装ファイル ................................................................................................................................................. 12

(2)NADView 生成 ........................................................................................................................................ 12

(3) isOuputLog の設定 ................................................................................................................................ 12

(4) apiKey,spotID の設定 ............................................................................................................................ 12

(5) デリゲートオブジェクトの設定 ............................................................................................................. 13

(6) 広告のロード .......................................................................................................................................... 13

(7) Delegate 通知 ......................................................................................................................................... 14

(8) 定期ロードの管理 ................................................................................................................................... 15

(9) リリース.................................................................................................................................................. 16

◆検証 ................................................................................................................................................................... 17

◆よくある質問 .................................................................................................................................................... 18

nendSDKnendSDKnendSDKnendSDK 導入のおおまかな流れ導入のおおまかな流れ導入のおおまかな流れ導入のおおまかな流れ

本マニュアルは、AppBank Network へのメディアパートナー登録済の iOS アプリ開発者様向けの内容となりま

す。

①①①①AppBank NetworkAppBank NetworkAppBank NetworkAppBank Network 管理画面でアプリ登録と広告枠登録を行い、最新の管理画面でアプリ登録と広告枠登録を行い、最新の管理画面でアプリ登録と広告枠登録を行い、最新の管理画面でアプリ登録と広告枠登録を行い、最新の SDKSDKSDKSDK を入手しを入手しを入手しを入手し

ます。ます。ます。ます。

※ アプリを登録後、広告枠作成のち「apiKey」「spotID」を発行し SDK を入手している前提での説明を行います。

※ 広告枠の登録まで進んでいない場合には、別紙「管理画面マニュアル」PDF をご参照の上、ご申請ください。

※ 広告枠を申請後、広告枠の管理>広告枠>SDK>「SDK をダウンロード」 で SDK を入手できます。

②②②②本マニュアルに従って本マニュアルに従って本マニュアルに従って本マニュアルに従って nendSDKnendSDKnendSDKnendSDK をアプリに組み込みます。をアプリに組み込みます。をアプリに組み込みます。をアプリに組み込みます。

※ 本マニュアルは、iOS 用の nendSDK 導入に関してのマニュアルとなります。

Page 4: nendSDK 設定マニュアル iOS ver2.0img.blog.appbank.net/files/appbanknetwork_nendSDK2.0.1.pdfnendSDK 設定マニュアル iOS 5 【重要】 インフォメーションボタンについて

nendSDK 設定マニュアル iOS

4

◆◆◆◆nendSDK iOSnendSDK iOSnendSDK iOSnendSDK iOS についてについてについてについて

ファイル構成ファイル構成ファイル構成ファイル構成

NendSDK_iOS.zip

NendAd/ SDK フォルダ

libNendAd.a ライブラリ

NADView.h ヘッダファイル

NADView_readme.txt ライセンス文等

Samples/ サンプルソースフォルダ

NendSDKTestARC/ Single View Application, ARC の実装例

nendSDK2.0.0_manual.pdf 本マニュアル

対応環境対応環境対応環境対応環境

端末環境端末環境端末環境端末環境

デバイスは、iPhone 3GS(armv7対応)以上、iPhone 5 (armv7s 対応)

OS バージョンは、iOS 4.3以上が動作保障対象となります。

それ以外の端末では正常に動作しない場合があります。

開発環境開発環境開発環境開発環境

Xcode 4.5 (iOS SDK 6) Xcode 4.5 (iOS SDK 6) Xcode 4.5 (iOS SDK 6) Xcode 4.5 (iOS SDK 6) 以上が必要です。以上が必要です。以上が必要です。以上が必要です。

Xcode 4.4 (iOS SDK 5.1) Xcode 4.4 (iOS SDK 5.1) Xcode 4.4 (iOS SDK 5.1) Xcode 4.4 (iOS SDK 5.1) 以下の環境では利用できません。以下の環境では利用できません。以下の環境では利用できません。以下の環境では利用できません。

Page 5: nendSDK 設定マニュアル iOS ver2.0img.blog.appbank.net/files/appbanknetwork_nendSDK2.0.1.pdfnendSDK 設定マニュアル iOS 5 【重要】 インフォメーションボタンについて

nendSDK 設定マニュアル iOS

5

【重要】 インフォメーションボタンについて バージョン2.0.0より、アプリに配信される広告バナーに「インフォメーションボタン」「インフォメーションボタン」「インフォメーションボタン」「インフォメーションボタン」が表示されるようになりました。

この機能が追加された nendSDK を利用することにより、弊社システムが提供する一部ターゲティング広告に対して、より

ユーザ(アプリ利用者)自身が容易にオプトアウトの設定をすることが可能になります。

平成24年より、総務省においてスマートフォンのプライバシーに関する議論がなされ、「スマートフォンプライバシーイ

ニシアティブ」として取りまとめがされております。

参考URL参考URL参考URL参考URL

http://www.soumu.go.jp/menu_news/s-news/01kiban08_02000087.html

アプリ提供者、情報収集モジュール提供者、広告配信事業者の自主的かつ積極的な取り組みを期待されております

ので、メディアパートナー様におかれましてもご確認頂きますようお願いいたします。 また、弊社においても広告配信シ

ステム提供事業者として、より一層透明性の高い取り組みを実施していく所存でございます。

尚、当SDKにおける取得情報は、以下のようになっており、個人情報に該当するものは取得しておりません。

・匿名ID・匿名ID・匿名ID・匿名ID (((( UIIDUIIDUIIDUIID / iOS6/ iOS6/ iOS6/ iOS6以降のものは広告識別子)、端末情報(OS情報、端末機種種類、URLスキーム情報、パッケ以降のものは広告識別子)、端末情報(OS情報、端末機種種類、URLスキーム情報、パッケ以降のものは広告識別子)、端末情報(OS情報、端末機種種類、URLスキーム情報、パッケ以降のものは広告識別子)、端末情報(OS情報、端末機種種類、URLスキーム情報、パッケ

ージ名等)ージ名等)ージ名等)ージ名等)

※※※※URLスキーム情報、パッケージ名に関しては、SDK内でのみ利用しており、外部送信および保存等を行うことは一URLスキーム情報、パッケージ名に関しては、SDK内でのみ利用しており、外部送信および保存等を行うことは一URLスキーム情報、パッケージ名に関しては、SDK内でのみ利用しており、外部送信および保存等を行うことは一URLスキーム情報、パッケージ名に関しては、SDK内でのみ利用しており、外部送信および保存等を行うことは一

切ございません。切ございません。切ございません。切ございません。

Page 6: nendSDK 設定マニュアル iOS ver2.0img.blog.appbank.net/files/appbanknetwork_nendSDK2.0.1.pdfnendSDK 設定マニュアル iOS 5 【重要】 インフォメーションボタンについて

nendSDK 設定マニュアル iOS

6

◆◆◆◆組み込み方法組み込み方法組み込み方法組み込み方法

○プロジェクトへの nendSDK追加

Xcode 上で対象プロジェクトに「NendAd」フォルダごとドラッグ&ドロップします。

下記、左図ダイアログの表示で、必要に応じて任意の設

定(※)を選び「Finish」をクリックします。

追加が完了すると Xcode のファイルリストに

右図のように表示されます。 ※ 既にプロジェクトフォルダ配下に NendAd フォルダを移動させたものに対して参照設定を追加する場合には、

ファイルをコピーする必要がないため、“Copy items into destination group's folder (if needed) ” にチェックを入れる必要はありません。

Page 7: nendSDK 設定マニュアル iOS ver2.0img.blog.appbank.net/files/appbanknetwork_nendSDK2.0.1.pdfnendSDK 設定マニュアル iOS 5 【重要】 インフォメーションボタンについて

nendSDK 設定マニュアル iOS

7

○必須フレームワークの追加

nendSDK の利用には、

・・・・AdSupport.framework (ver2.0.0AdSupport.framework (ver2.0.0AdSupport.framework (ver2.0.0AdSupport.framework (ver2.0.0より必須より必須より必須より必須))))

・・・・Security.frameworkSecurity.frameworkSecurity.frameworkSecurity.framework

の追加が必要です。

左側のプロジェクトナビゲーターから、プロジェクトをクリックして

TARGETS>Build Phases>Link Binary With Libraries 項目を開きます。

Page 8: nendSDK 設定マニュアル iOS ver2.0img.blog.appbank.net/files/appbanknetwork_nendSDK2.0.1.pdfnendSDK 設定マニュアル iOS 5 【重要】 インフォメーションボタンについて

nendSDK 設定マニュアル iOS

8

「+」をクリックして、追加できるライブラリの一覧を開き

AdSupprot.frameworkAdSupprot.frameworkAdSupprot.frameworkAdSupprot.framework を選択して追加してください。

その後、Security.frameworkSecurity.frameworkSecurity.frameworkSecurity.framework も同様に追加します。

Link Binary With Libraries に下記のリンクが正常に追加されていることを確認します。 ・・・・AdSupport.frameworkAdSupport.frameworkAdSupport.frameworkAdSupport.framework

・・・・Security.frameworkSecurity.frameworkSecurity.frameworkSecurity.framework

・・・・libNendAd.alibNendAd.alibNendAd.alibNendAd.a

Page 9: nendSDK 設定マニュアル iOS ver2.0img.blog.appbank.net/files/appbanknetwork_nendSDK2.0.1.pdfnendSDK 設定マニュアル iOS 5 【重要】 インフォメーションボタンについて

nendSDK 設定マニュアル iOS

9

○ビルド

任意のヘッダファイルに「#import #import #import #import ““““NADView.hNADView.hNADView.hNADView.h””””」を記述し、一旦ビルドします。

エラーが発生せずにビルドが成功すれば、正常に SDK が追加できています。

※この時点でエラーが発生する場合は、Link Binary With Libraries の内容を再度確認してくださ

い。

Page 10: nendSDK 設定マニュアル iOS ver2.0img.blog.appbank.net/files/appbanknetwork_nendSDK2.0.1.pdfnendSDK 設定マニュアル iOS 5 【重要】 インフォメーションボタンについて

nendSDK 設定マニュアル iOS

10

◆◆◆◆NADViewNADViewNADViewNADView の内容の内容の内容の内容

○メソッド

- (void)setNendID:(NSString *)apiKey spotID:(NSString *)spotID;

広告枠の apiKey と spotID をセットします。

- (void)load;

ロードを開始します。

- (void)load:(NSDictionary *)parameter;

ロードを開始します。

接続エラーや広告設定受信エラーなどの場合にリトライする間隔を、NSDictionary で任意指定出来

ます。ただし key は「retry」、value は30 - 3600 の間で指定してください。範囲外指定された場合は

標準で60秒が適用されます。標準で問題ない場合は parameter のない load; を利用してください。

- (void) pause;

広告の定期ロード中断を要求します

- (void) resume;

広告の定期ロード再開を要求します

○プロパティ

@property (nonatomic, assign) id <NADViewDelegate> delegate;

delegate オブジェクトの指定

【追加】【追加】【追加】【追加】

@property (nonatomic) BOOL isOutputLog;

エラーログや警告ログを、NSLog として出力するかどうかの指定(任意)

【廃止予定】【廃止予定】【廃止予定】【廃止予定】

@property (nonatomic, assign) UIViewController *rootViewController;

モーダルビュー表示元のビューコントローラの指定(任意)

○Delegate - (void) nadViewDidFinishLoad:(NADView *)adView;

広告ロードが初めて成功した際に通知されます

- (void) nadViewDidReceiveAd:(NADView *)adView;

広告受信が成功した際に通知されます。(任意)

- (void) nadViewDidFailToReceiveAd:(NADView *)adView;

広告受信に失敗した際に通知されます。(任意)

Page 11: nendSDK 設定マニュアル iOS ver2.0img.blog.appbank.net/files/appbanknetwork_nendSDK2.0.1.pdfnendSDK 設定マニュアル iOS 5 【重要】 インフォメーションボタンについて

nendSDK 設定マニュアル iOS

11

◆◆◆◆実装実装実装実装

ここでは最もシンプルな構造を例にして NADView の実装方法について説明しま

す。それ以外の詳しい実装についてはサンプルソースをご参照ください。

○ヘッダファイル

(1) delegate(1) delegate(1) delegate(1) delegate 準拠準拠準拠準拠

広告ビューを保持するクラスのヘッダファイルで NADView.h をインポートして

NADViewDelegate に準拠します。

例) YourAppViewController.h

注意:複数画面で構成されるアプリケーションで、各 ViewController ごとにインスタンス生成するような実

装方法の場合には、画面ごとに必ず後述の((((8888)定期ロードの管理)定期ロードの管理)定期ロードの管理)定期ロードの管理を行ってください。

#import <UIKit/UIKit.h>

#import "NADView.h"

@interface YourAppViewController : UIViewController <NADViewDelegate> {

}

@property (nonatomic, retain) NADView * nadView;

@end

Page 12: nendSDK 設定マニュアル iOS ver2.0img.blog.appbank.net/files/appbanknetwork_nendSDK2.0.1.pdfnendSDK 設定マニュアル iOS 5 【重要】 インフォメーションボタンについて

nendSDK 設定マニュアル iOS

12

○実装ファイル

例) YourAppViewController.m(一部) - NADView 生成からロードまで

(2)NADView(2)NADView(2)NADView(2)NADView 生成生成生成生成

任意の位置、320x50サイズの CGRect を引数にインスタンスを生成します。

※上記は、addSubview する先の View の0,0の位置を左上に指定して広告を配置する例です。

(3) isOuputLog(3) isOuputLog(3) isOuputLog(3) isOuputLog の設定の設定の設定の設定

エラーログや警告ログを出力するかどうかを指定します。

初期値は YES です。出力したくない場合は NO をセットしてください。

(4) apiKey,spotID(4) apiKey,spotID(4) apiKey,spotID(4) apiKey,spotID の設定の設定の設定の設定

AppBank Network 管理画面で発行した、該当アプリの広告枠の apiKey、spotID をセットします。

※この時点で広告設定情報へのアクセスを開始します。

広告枠ステータスが「承認中」の場合、広告のロードをしても受信エラーになります。AppBank Network

管理画面で該当アプリの広告枠ステータスが「アクティブ」であることを確認してください。

広告枠の申請は、承認済みになるとステータスが「アクティブ」に変わり、登録メールアドレス宛に広告枠広告枠の申請は、承認済みになるとステータスが「アクティブ」に変わり、登録メールアドレス宛に広告枠広告枠の申請は、承認済みになるとステータスが「アクティブ」に変わり、登録メールアドレス宛に広告枠広告枠の申請は、承認済みになるとステータスが「アクティブ」に変わり、登録メールアドレス宛に広告枠

承認のお知らせが届きます。メール到着の数時間後には広告配信ができる状態になります。承認のお知らせが届きます。メール到着の数時間後には広告配信ができる状態になります。承認のお知らせが届きます。メール到着の数時間後には広告配信ができる状態になります。承認のお知らせが届きます。メール到着の数時間後には広告配信ができる状態になります。

単に実装方法の確認を行う場合は一時的に表示テスト用表示テスト用表示テスト用表示テスト用 IDIDIDID(→◆検証)を利用するなどしてください。

self.nadView = [[NADView alloc] initWithFrame:

CGRectMake(0,0, NAD_ADVIEW_SIZE_320x50.width, NAD_ADVIEW_SIZE_320x50.height )];

[self.nadView setNendID:@"a6eca9dd074372c898dd1df549301f277c53f2b9"

spotID:@"3172"];

[self.nadView setIsOutputLog:NO];

- (void)viewDidLoad {

[super viewDidLoad];

// (2) NADViewの作成

self.nadView = [[NADView alloc] initWithFrame:CGRectMake(0,0,

NAD_ADVIEW_SIZE_320x50.width,

NAD_ADVIEW_SIZE_320x50.height )];

[self.nadView setIsOutputLog:NO]; // (3)

// (4) set apiKey, spotId.

[self.nadView setNendID:@"a6eca9dd074372c898dd1df549301f277c53f2b9"

spotID:@"3172"];

[self.nadView setDelegate:self]; //(5)

[self.nadView load]; //(6)

[self.view addSubview:self.nadView]; // 最初から表示する場合

}

Page 13: nendSDK 設定マニュアル iOS ver2.0img.blog.appbank.net/files/appbanknetwork_nendSDK2.0.1.pdfnendSDK 設定マニュアル iOS 5 【重要】 インフォメーションボタンについて

nendSDK 設定マニュアル iOS

13

(5) (5) (5) (5) デリゲートオブジェクトの設定デリゲートオブジェクトの設定デリゲートオブジェクトの設定デリゲートオブジェクトの設定

NADView が広告を受信開始した場合に指定されたデリゲートの nadViewDidFinishLoad メソッドを呼ん

で通知を行います。指定するデリゲートは「nadViewDidFinishLoad」メソッドを実装する

「NADViewDelegate」プロトコルに準拠させたクラスを指定します。

(6) (6) (6) (6) 広告のロード広告のロード広告のロード広告のロード

NADView の load メソッドで広告のロードを開始します。

リトライ間隔を標準値以外で指定したい場合には、以下のメソッドを利用してロードを開始します。

[self.nadView setDelegate:self];

[self.nadView load];

// 例) 問い合わせエラー時には60分間隔で再問い合わせする

[self.nadView load:[NSDictionary dictionaryWithObjectsAndKeys:@"3600", @"retry", nil]];

Page 14: nendSDK 設定マニュアル iOS ver2.0img.blog.appbank.net/files/appbanknetwork_nendSDK2.0.1.pdfnendSDK 設定マニュアル iOS 5 【重要】 インフォメーションボタンについて

nendSDK 設定マニュアル iOS

14

(7) Delegate(7) Delegate(7) Delegate(7) Delegate 通知通知通知通知

ロード完了ロード完了ロード完了ロード完了

広告のロードが完了すると(4)で指定したデリゲートの nadViewDidFinishLoad メソッドに通知されます。

ロードが完了してから NADView を表示したい場合はここで行うことができます。

【任意】広告受信通知【任意】広告受信通知【任意】広告受信通知【任意】広告受信通知

広告の受信に成功した場合通知されます。

広告を受信するたびに任意の処理を行いたい場合に利用します。

【任意】広告受信エラー通知【任意】広告受信エラー通知【任意】広告受信エラー通知【任意】広告受信エラー通知

広告の受信に失敗した場合に通知されます。

通信エラー、広告在庫がなくなった場合など、何らかの理由で広告を表示できない場合に通知します。

エラー時に広告を非表示にするなどの処理が必要な場合に利用します。

※※※※ver2.0.0ver2.0.0ver2.0.0ver2.0.0より、より、より、より、delegatedelegatedelegatedelegate メソッドでの通知の際、一律メインスレッドで通知を行うよう変更されました。旧メソッドでの通知の際、一律メインスレッドで通知を行うよう変更されました。旧メソッドでの通知の際、一律メインスレッドで通知を行うよう変更されました。旧メソッドでの通知の際、一律メインスレッドで通知を行うよう変更されました。旧

バージョンからの入れ替えの際、サブスレッドで通知を受ける前提での実装がある場合には十分にご注バージョンからの入れ替えの際、サブスレッドで通知を受ける前提での実装がある場合には十分にご注バージョンからの入れ替えの際、サブスレッドで通知を受ける前提での実装がある場合には十分にご注バージョンからの入れ替えの際、サブスレッドで通知を受ける前提での実装がある場合には十分にご注

意ください。意ください。意ください。意ください。

-(void)nadViewDidFailToReceiveAd:(NADView *)adView {

NSLog(@"delegate nadViewDidFailToLoad:");

}

-(void)nadViewDidFinishLoad:(NADView *)adView {

NSLog(@"delegate nadViewDidFinishLoad:");

}

-(void)nadViewDidReceiveAd:(NADView *)adView {

NSLog(@"delegate nadViewDidReceiveAd:");

}

Page 15: nendSDK 設定マニュアル iOS ver2.0img.blog.appbank.net/files/appbanknetwork_nendSDK2.0.1.pdfnendSDK 設定マニュアル iOS 5 【重要】 インフォメーションボタンについて

nendSDK 設定マニュアル iOS

15

(8) (8) (8) (8) 定期ロードの管理定期ロードの管理定期ロードの管理定期ロードの管理

広告のロードを開始した後に画面内に表示しないケースがある場合には、

必ず以下の処理を行ってください。

これには、

・ 複数画面で構成された画面遷移が発生するアプリケーションにおいて

各画面で個別に広告のインスタンスを生成している場合

・ 複数広告の切り替え処理(広告スイッチング SDK の利用含む)を行う場合

などが該当します。

定期ロードの中断定期ロードの中断定期ロードの中断定期ロードの中断

広告を画面内に表示しない、もしくは画面遷移等で View 自体が表示されない場合には

pause メッセージを送信、広告の定期ロードを中断します。

例)画面が隠れたら定期ロードを中断

定期ロードの再開定期ロードの再開定期ロードの再開定期ロードの再開

広告を再び画面内に表示、または画面遷移等で View 自体を表示する場合には

resume メッセージを送信、広告の定期ロードを再開します。

例)画面が表示されたら定期ロードを再開

- (void)viewWillDisappear:(BOOL)animated {

[self.nadView pause];

}

- (void)viewWillAppear:(BOOL)animated {

[self.nadView resume];

}

Page 16: nendSDK 設定マニュアル iOS ver2.0img.blog.appbank.net/files/appbanknetwork_nendSDK2.0.1.pdfnendSDK 設定マニュアル iOS 5 【重要】 インフォメーションボタンについて

nendSDK 設定マニュアル iOS

16

(9) (9) (9) (9) リリースリリースリリースリリース

dealloc 時には、必ず必ず必ず必ず delegatedelegatedelegatedelegate プロパティにプロパティにプロパティにプロパティに nilnilnilnil をセットしてをセットしてをセットしてをセットしてからリリースを行うようにしてください。

ARC の場合

非 ARC の場合

【重要】【重要】【重要】【重要】

ddddelegateelegateelegateelegate プロパティにプロパティにプロパティにプロパティに nilnilnilnil をセットしない場合、メモリの解放が適切に行われず、稀に予期しないクラッをセットしない場合、メモリの解放が適切に行われず、稀に予期しないクラッをセットしない場合、メモリの解放が適切に行われず、稀に予期しないクラッをセットしない場合、メモリの解放が適切に行われず、稀に予期しないクラッ

シュを引き起こす場合があります。シュを引き起こす場合があります。シュを引き起こす場合があります。シュを引き起こす場合があります。 必ず必ず必ず必ず delegatedelegatedelegatedelegate にににに nilnilnilnil をセットしてからをセットしてからをセットしてからをセットしてから releasereleasereleaserelease を行うようにしてくださを行うようにしてくださを行うようにしてくださを行うようにしてくださ

い。い。い。い。

また、delegate に nil がセットされた際、自動的に広告受信ローテーションを中断(pause)します。

これにより release 前の pauseメッセージ送信が不要になります。

以上で設定完了となります。以上で設定完了となります。以上で設定完了となります。以上で設定完了となります。

- (void) dealloc {

[self.nadView setDelegate:nil]; // delegate に nil をセット

[self.nadView release];

self.nadView = nil;

}

- (void) dealloc {

[self.nadView setDelegate:nil]; // delegate に nil をセット

self.nadView = nil;

}

Page 17: nendSDK 設定マニュアル iOS ver2.0img.blog.appbank.net/files/appbanknetwork_nendSDK2.0.1.pdfnendSDK 設定マニュアル iOS 5 【重要】 インフォメーションボタンについて

nendSDK 設定マニュアル iOS

17

◆◆◆◆検証検証検証検証

iOS アプリ向け表示テスト用の apiKey と spotID を設定していただくことで

対象アプリケーション用の広告枠のステータスが「承認中」(非アクティブ)である場合でも

広告表示の確認ができます。

iOSiOSiOSiOS アプリ向け表示テスト用アプリ向け表示テスト用アプリ向け表示テスト用アプリ向け表示テスト用 IDIDIDID

apiKey: a6eca9dd074372c898dd1df549301f277c53f2b9apiKey: a6eca9dd074372c898dd1df549301f277c53f2b9apiKey: a6eca9dd074372c898dd1df549301f277c53f2b9apiKey: a6eca9dd074372c898dd1df549301f277c53f2b9

spotID: 3172spotID: 3172spotID: 3172spotID: 3172

※※※※確認後は必ず各アプリケーション用広告枠の確認後は必ず各アプリケーション用広告枠の確認後は必ず各アプリケーション用広告枠の確認後は必ず各アプリケーション用広告枠の apiKeyapiKeyapiKeyapiKey とととと spotIDspotIDspotIDspotID に書き換えてください。に書き換えてください。に書き換えてください。に書き換えてください。

※※※※テスト用テスト用テスト用テスト用 IDIDIDID のままアプリケーションをストアへ申請、配布された場合、広告効果は正しのままアプリケーションをストアへ申請、配布された場合、広告効果は正しのままアプリケーションをストアへ申請、配布された場合、広告効果は正しのままアプリケーションをストアへ申請、配布された場合、広告効果は正し

く集計されませんのでご注意ください。また、テスト用く集計されませんのでご注意ください。また、テスト用く集計されませんのでご注意ください。また、テスト用く集計されませんのでご注意ください。また、テスト用 IDIDIDID のまま申請してしまった場合、のまま申請してしまった場合、のまま申請してしまった場合、のまま申請してしまった場合、

AppBank NetworkAppBank NetworkAppBank NetworkAppBank Network 側での保障等はできかねますのでご了承ください。側での保障等はできかねますのでご了承ください。側での保障等はできかねますのでご了承ください。側での保障等はできかねますのでご了承ください。

広告受信エラーの最も簡単な再現方法はオフラインにすることです。現状、nendSDK 内

でオンライン状況のチェックは行っておりませんので、オフライン時に何らかの処理を行う

場合は、アプリケーション側で実装する必要があります。

Page 18: nendSDK 設定マニュアル iOS ver2.0img.blog.appbank.net/files/appbanknetwork_nendSDK2.0.1.pdfnendSDK 設定マニュアル iOS 5 【重要】 インフォメーションボタンについて

nendSDK 設定マニュアル iOS

18

◆◆◆◆よくあるよくあるよくあるよくある質問質問質問質問

■■■■nendSDKnendSDKnendSDKnendSDK の導入についての導入についての導入についての導入について

QQQQ:広告が表示されません:広告が表示されません:広告が表示されません:広告が表示されません (受信エラーだけが通知される)(受信エラーだけが通知される)(受信エラーだけが通知される)(受信エラーだけが通知される)

A:広告受信エラーの際、ログ出力設定を有効にしている場合に NSLog でエラー内容を出力していますので、ま

ずはそちらをご確認ください。

主なエラー内容主なエラー内容主なエラー内容主なエラー内容

無効な apiKey をセットしている可能性があります。

WEB の AppBank Network 管理画面より、該当する広告枠に対して発行された apiKey と spotID を正しくセット

しているかを確認してください。

広告枠のステータスがアクティブでない(承認中)、もしくは spotID が正しくない可能性があります。

特に、広告枠のステータスが「承認中」の場合は広告は配信されません。承認がされた際にはご登録メールアド

レス宛に広告枠承認のお知らせが届きますが、「アクティブ」に変わってから広告配信が反映されるまでに数時間

ほどかかる場合があります。

※広告枠の情報を修正した際にも、再審査のために一時的に「承認中」になります。

広告枠のステータスもアクティブですが、広告枠の設定に対して配信可能な広告がない可能性があります。特

に、iOS シミュレータの言語設定(例:日本語以外)によっては配信可能な広告の在庫がないために受信エラーに

なる場合があります。

※ Xcode および iOS SDK のインストール時ならびにアップデート時には、シミュレータの言語設定が初期状態

になっていますのでご注意ください。

[nendSDK Error] IE300: Invalid parameter.

[nendSDK Error] IE400: Cannot get ads.

[nendSDK Error] IE860: Ad is out of stock.

[nendSDK Error] IE501: Cannot display ads.

Page 19: nendSDK 設定マニュアル iOS ver2.0img.blog.appbank.net/files/appbanknetwork_nendSDK2.0.1.pdfnendSDK 設定マニュアル iOS 5 【重要】 インフォメーションボタンについて

nendSDK 設定マニュアル iOS

19

■■■■nendSDKnendSDKnendSDKnendSDK の機能についての機能についての機能についての機能について

QQQQ:広告が配信されなかったことをプログラム内で検知する方法はありますか?:広告が配信されなかったことをプログラム内で検知する方法はありますか?:広告が配信されなかったことをプログラム内で検知する方法はありますか?:広告が配信されなかったことをプログラム内で検知する方法はありますか?

A:接続エラーや広告の在庫切れなど、次の広告を表示できない場合、広告受信エラーを通知します。このエラー

は広告配信されないたび、もしくはリトライが失敗するたびに通知されます。

→詳しくは「◆実装 (7)delegate」をご覧ください。

QQQQ::::iPadiPadiPadiPad アプリでもアプリでもアプリでもアプリでも SDKSDKSDKSDK を利用できますか?を利用できますか?を利用できますか?を利用できますか?

A:動作保証環境内であれば利用はできます。現状の表示サイズは iPhone 同様320*50のみになります。

Q: [nendSDK Error] Q: [nendSDK Error] Q: [nendSDK Error] Q: [nendSDK Error] などのなどのなどのなどの NSLogNSLogNSLogNSLog 出力をしないようにはできますか?出力をしないようにはできますか?出力をしないようにはできますか?出力をしないようにはできますか?

A: ver2.0.0から追加された isOutputLog プロパティに NO を設定してください。初期値は YES で、任意に設定を

しない場合はこれまで同様にコンソールにエラーログや警告ログが出力されます。

■■■■その他その他その他その他

QQQQ:アプリ内に:アプリ内に:アプリ内に:アプリ内に AppBankAppBankAppBankAppBank NetworkNetworkNetworkNetwork 広告を配信したいのですが、広告を配信したいのですが、広告を配信したいのですが、広告を配信したいのですが、SDKSDKSDKSDK が利用できません。他に配信する方法はありが利用できません。他に配信する方法はありが利用できません。他に配信する方法はありが利用できません。他に配信する方法はあり

ますか?ますか?ますか?ますか?

A:受信エラーの検知が出来ないなどの制限がありますが、WEB サイトと同様 JavaScript タグを利用することによっ

て広告を表示することが可能です。実装方法など、詳細については直接お問合せください。

APPBANK NETWORKAPPBANK NETWORKAPPBANK NETWORKAPPBANK NETWORK お問合せ先お問合せ先お問合せ先お問合せ先

[email protected]@gmail.comappbank.adnet.developer@[email protected]

※お問い合わせ時には、メディア登録名、apikey/spotID、SDK バージョン番号、必要に応じてご利用中

の開発環境や端末機種の詳細などを情報としてお寄せ頂けますとより回答がスムーズになります。