一つのSDKを入れるだけで、複数の広告を表示できる「adfurikun」をcocos2dxのandroidに設定する方法をブログで紹介したいと思います。 「adfurikun」がどのようなものなのかは、下記を参考にして下さい。
準備-SDK
まずは、ホームページからSDKをダウンロードしてください。 12月6日時点で「adfurikunSDK Android 2.2.2」が最新のモノです。 この中にある、「adfurikun2.2.2.jar」をeclipseのプロジェクト[libs]に追加して下さい。
プロジェクトの「プロパティ」から「Javaのビルド・パス」を選択して、「adfurikun2.2.2.jar」を追加してください。
最後にAndroidManifest.xmlに、下記コードを記入して完了です。
[c]
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
[/c]
実装
プロジェクトのCocos2dActivity内に、コードを記載していきます。
[c] public class AdApp extends Cocos2dxActivity{
private static Cocos2dxActivity me = null;
private static final int AD_HEIGHT = 50;
public static final String ADFURIKUN_APPID = "*************************"; //adfurikunのIDを記入してください。
private AdfurikunLayout adfurikunView;
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
me = this;
final float scale = me.getResources().getDisplayMetrics().density;
int ad_height = (int) (AD_HEIGHT * scale + 0.5f);
LinearLayout.LayoutParams adParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,ad_height);
adfurikunView = new AdfurikunLayout(me.getApplicationContext());
addContentView(adfurikunView, adParams);
adfurikunView.setAdfurikunAppKey(ADFURIKUN_APPID);
adfurikunView.startRotateAd();
adfurikunView.onResume();
[/c]
注意点は、onResume()を呼び出さないと広告配信が始まらないことです。
テストモードにすると、どの広告が出ているのかわかりやすいです。 AndroidManifest.xmlに下記のように記載をして下さい。
[c]
<meta-data
android:name="adfurikun_test"
android:value="true" />
</application>
[/c]
これで完了です。
広告の位置を下にする
上記の方法では広告は上に表示されいます。これを一番したに表示する場合は以下のようにします。
[c]
final float scale = me.getResources().getDisplayMetrics().density;
int ad_height = (int) (AD_HEIGHT * scale + 0.5f);
LayoutParams adParams = new LayoutParams(LayoutParams.MATCH_PARENT, ad_height);
adParams.gravity = (Gravity.BOTTOM|Gravity.CENTER);
adfurikunView = new AdfurikunLayout(me.getApplicationContext());
addContentView(adfurikunView, adParams);
[/c]
広告の表示・非表示
場面によって、広告を表示・非表示にする場合があると思います。 その際には、以下のようにします。
[c]
//広告を非表示にする。
adfurikunView.setVisibility(View.INVISIBLE);
adfurikunView.onPause();
//広告を表示する adfurikunView.setVisibility(View.VISIBLE); adfurikunView.onResume();
[/c]
setVisibilityで、広告を消しても広告配信自体は行われているので、onPause()を利用して、配信自体を止めることができます。
最後に
最初、上手く表示されず、adfurikunのサポート担当者の方に問い合わせをしてようやく実装できるようになりました。 今回は、基本的なバナー広告の設置を紹介しましたが、adfurikunは、その他「アイコン広告」「全面広告」もあります。 もし、導入するようになったら、こちらの設置方法も紹介します。