AMoAd SDK 3.0.11 Guide for Android 2015 年 4 月 28 日
更 新 履 歴 更 新 日 バージョン 更 新 内 容 2014.01.28 3.0.0 コードレス 安 定 化 パフォーマンスアップ 2014.02.19 3.0.1 WeakReference バグ 対 応 リソースの 解 析 バグ 対 応 2014.02.27 3.0.2 HTML 広 告 のスクロールを 非 活 性 化 2014.06.11 3.0.3 Google Mediation 対 応 2014.07.11 3.0.4 Proguard のバグ 対 応 2014.07.25 3.0.5 Android1.6~2.2 対 応 2014.08.20 3.0.6 SID バリデーションチェック 対 応 2014.08.21 3.0.7 V3.0.5 のバグ 対 応 2015.02.27 3.0.8 クリックしても 遷 移 ができない Html 広 告 の 対 応 2015.03.24 3.0.9 Iframe 内 のリンクをクリックしても 遷 移 ができない Html 広 告 の 対 応 2015.04.24 3.0.10 Iframe 内 のリンクをクリックすると Iframe 内 が 遷 移 される 不 具 合 の 対 応 2015.04.28 3.0.11 CalledFromWrongThreadException バグ 対 応 AMoAd, Inc. 2
目 次 概 要 4 1. 対 応 環 境 4 2. ファイル 構 成 4 組 み 込 み 方 法 5 プロジェクトの 設 定 5 Google Play services 5 AndroidManifest.xml 7 実 装 方 法 8 コールバック 9 ローテーションの 開 始 停 止 10 3. テスト 検 証 について 10 APPENDIX A. API 仕 様 11 AMoAdView 11 AdCallback インターフェース 12 APPENDIX B. 広 告 をソースコードで 生 成 する 13 サンプルコード 13 AMoAd, Inc. 3
概 要 AMoAd SDK for Android( 以 下 本 SDK と 表 記 します)は Android デベロッパーが 自 らのアプリケーションに AMoAd が 配 信 する 広 告 を 表 示 させるためのツールキットです AMoAd Web サイトで 発 行 する 固 有 ID を 指 定 してアプリケーションに 個 別 の 広 告 を 配 信 します 広 告 は Android デベロッパーが 画 面 レイアウトで 指 定 する 任 意 の 位 置 に 表 示 すること が 可 能 です 1. 対 応 環 境 本 SDK は 以 下 のバージョンの Android OS をサポートします OS バージョン API Level 備 考 2.3.3 10 3.0 11 タブレット 専 用 3.1 12 タブレット 専 用 3.2 13 タブレット 専 用 4.0 14 4.0.3 15 4.1.2 16 4.2.2 17 4.3 18 4.4 19 2. ファイル 構 成 本 SDK は 以 下 のファイルから 構 成 されます AMoAd_3_0_11.jar... ライブラリ 本 体 AMoAd_SDK_3_0_11_Guide_for_Android.pdf 本 ドキュメント AMoAdSample... ライブラリを 使 用 したサンプルプログラム AMoAd, Inc. 4
組 み 込 み 方 法 ADT のバージョンによりライブラリの 組 み 込 み 方 法 が 異 なることがあります ADT のバ ージョンに 合 った 方 法 で 組 み 込 んでください プロジェクトの 設 定 1 libs フォルダを 作 成 し AMoAd_3_0_11.jar を libs にドラッグ&ドロップします 2 AMoAd_3_0_11.jar がライブラリに 追 加 されます 自 動 的 に 追 加 されない 場 合 はプロジェクトのプロパティより 手 動 で 追 加 してください Google Play services 本 SDK では 追 跡 型 広 告 を 表 示 するため Google Advertising ID を 使 用 します Google Play services は Android SDK の Extras として Google より 提 供 されています 以 下 に 導 入 方 法 を 示 します 3 Android SDK Manager を 開 く AMoAd, Inc. 5
4 Google Play services をインストールする 5 Google Play services プロジェクトを Import する メニュー File > Import Android > Existing Android Code Into Workspace Google Play services のパスを 入 力 して Finish ボタンを 押 します AMoAd, Inc. 6
6 Google Play services をライブラリに 追 加 する Add... ボタンから Import した Google Play services を 選 択 します AndroidManifest.xml 1 メタ 情 報 (meta-data)を 追 加 する AndroidManifest.xml <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.amoadsample" android:versioncode="1" android:versionname="1.0"> <uses-sdk android:minsdkversion="10" /> <uses-permission android:name="android.permission.internet" /> <application android:allowbackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/apptheme"> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> <activity android:name="com.example.amoadsample.mainactivity"> <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> </activity> <activity android:name="com.example.amoadsample.subactivity" /> </application> </manifest> AMoAd, Inc. 7
実 装 方 法 本 SDK は layout.xml に AMoAdView タグを 配 置 し 属 性 を 設 定 することで 画 面 に 広 告 を 表 示 することができます layout.xml に 指 定 する 属 性 はソースコードから findviewbyid()などのメソッドで AMoAdView を 取 得 し セッターメソッドにより 設 定 することもできます 詳 細 は APPENDIX A API 仕 様 を 参 照 ください 1 レイアウト 設 定 layout.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <com.amoad.amoadview android:id="@+id/banner" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:background="#000" xmlns:amoad="http://schemas.amoad.com/apk/res/android" amoad:click_transition="jump" amoad:rotate_transition="rotate" amoad:sid=" 管 理 画 面 から 発 行 される SID を 設 定 してください" /> <Button android:id="@+id/nextbtn" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text=" 次 へ" /> </LinearLayout> 2 項 目 説 明 キー 値 xmlns:amoad "http://schemas.amoad.com/apk/res/android"( 必 須 ) amoad:sid 管 理 画 面 から 発 行 される SID を 設 定 してください( 必 須 ) amoad:rotate_tra 広 告 ローテーション 時 のトランジションを 設 定 する nsition "none" トランジション なし (デフォルト) "alpha" トランジション 透 過 "rotate" トランジション 回 転 "scale" トランジション 拡 大 "translate" トランジション スライド アップ amoad:click_tran 広 告 クリック 時 のトランジションを 設 定 する sition "none" トランジション なし (デフォルト) "jump" トランジション ジャンプ android:backgrou 最 初 の 広 告 情 報 が 取 れるまでに 表 示 する 画 像 を 設 定 する nd AMoAd, Inc. 8
コールバック AdCallback インターフェースを 用 いて SDK からの 通 知 を 受 け 取 ることが 可 能 です 通 知 の 種 類 は 以 下 の 通 りです メソッド didreceivead() didfailtoreceiveadwitherror() didreceiveemptyad() 通 知 内 容 受 信 成 功 受 信 失 敗 空 広 告 の 受 信 サンプルコード AMoAdView amoadview = ((AMoAdView)findViewById(R.id.banner)); amoadview.setcallback(new AdCallback() { @Override public void didreceivead() { } @Override public void didfailtoreceiveadwitherror() { } @Override public void didreceiveemptyad() { } }); AMoAd, Inc. 9
ローテーションの 開 始 停 止 本 SDK は 管 理 画 面 の 自 動 更 新 間 隔 で 指 定 された 間 隔 で 自 動 的 に 広 告 をロ ーテーション 表 示 します ローテーションさせたくない 場 合 や AdMob 広 告 ネットワ ークメディエーション 等 の 外 部 で AMoAd SDK を 制 御 する 際 は 管 理 画 面 の 自 動 更 新 間 隔 に 0 を 設 定 してください 本 SDK でローテーションを 止 めたり 間 隔 を 制 御 することはできません 3. テスト 検 証 について 組 み 込 みが 正 しく 行 われたかどうかは 管 理 画 面 から 発 行 される sid を 設 定 していた だくことで 確 認 いただけます 広 告 枠 を 作 成 いただくと AMoAd で 広 告 枠 の 審 査 を 行 わせていただきます 広 告 枠 の 審 査 が 完 了 するまでは 以 下 のバナーが 表 示 されます 広 告 枠 の 審 査 が 完 了 すると 広 告 主 から 提 供 されている 広 告 が 配 信 されるようになり ます AMoAd, Inc. 10
APPENDIX A. API 仕 様 AMoAd SDK for Android で 公 開 されている API を 以 下 にまとめます AMoAdView をソースコードで 生 成 する 場 合 は 必 ず Activity のコンテキストを 指 定 し てください AMoAdView void setsid(string sid) AMoAd Web サイトで 発 行 される ID( 必 須 )を 設 定 する パラメータ 文 字 列 (String) void setrotatetransition(rotatetransition transition) ローテーション 時 のトランジションを 設 定 する パラメータ RotateTransition.NONE トランジション なし RotateTransition.ALPHA トランジション 透 過 RotateTransition.ROTATE トランジション 回 転 RotateTransition.SCALE トランジション 拡 大 RotateTransition.TRANSLATE トランジション スライド アップ void setclicktransition(clicktransition transition) クリック 時 のトランジションを 設 定 する パラメータ ClickTransition.NONE トランジション なし ClickTransition.JUMP トランジション ジャンプ void setcallback (AdCallback callback) 通 知 を 受 け 取 るインターフェースを 設 定 する パラメータ AdCallback インターフェースを 実 装 したクラスのインスタンス 以 下 のメソッドは 対 応 する 新 しいメソッドに 変 更 されました 以 前 のメソッドも 使 用 する ことは 可 能 ですが 非 推 奨 となり 今 後 のバージョンでは 使 用 できなくなる 可 能 性 があり ます 変 更 前 型 変 更 後 型 setrotationanimation int setrotatetransition RotateTransition setclickanimation boolean setclicktransition ClickTransition 以 下 のメソッドは 非 推 奨 となり 呼 び 出 しても 何 も 起 こりません requestfreshad() startrotation() stoprotation() AMoAd, Inc. 11
AdCallback インターフェース void didfailtoreceiveadwitherror () 広 告 受 信 に 失 敗 した 場 合 に 呼 び 出 されます パラメータ なし 戻 り 値 なし void didreceiveemptyad () 空 広 告 を 受 信 した 場 合 に 呼 び 出 されます パラメータ なし 戻 り 値 なし void didreceivead() 広 告 受 信 に 成 功 した 場 合 に 呼 び 出 されます パラメータ なし 戻 り 値 なし AMoAd, Inc. 12
APPENDIX B. 広 告 をソースコードで 生 成 する 本 SDK では 広 告 の 生 成 をソースコードで 行 うこともできます その 場 合 でもシングルト ン パターンなどで 生 成 を 管 理 する 必 要 はなく 各 画 面 に 同 じ 固 有 ID を 設 定 することで 広 告 を 内 部 的 に 共 有 します API の 詳 細 については APPENDIX A API 仕 様 を 参 照 くだ さい サンプルコード @Override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); AMoAdView amoadview = new AMoAdView(this); amoadview.setsid(" 管 理 画 面 から 発 行 される SID を 設 定 してください"); amoadview.setrotatetransition(amoadview.rotatetransition.alpha); amoadview.setclicktransition(amoadview.clicktransition.jump); } ViewGroup content = (ViewGroup) findviewbyid(r.id.banner); content.addview(amoadview); 各 画 面 で 同 じ 固 有 ID の 広 告 を 生 成 して 追 加 します AMoAd, Inc. 13