Android でバナーを表示する
このページには、Android でバナー広告を表示するための手順とコード サンプルがあります。
XML、Java、または 2 つの組み合わせを使用してバナー広告ビューを構成できます。 XML と Java に相当するものを次に示します。
opensdk:placement_id
またはadview.setPlacementID(String placementID)
: アプリのインベントリに関連付けられている配置 ID。 配置 ID を含める必要があります。またはエラーがスローされます。 例:"123456"
。注:
バージョン RC2.8 以降では、インベントリ コードとメンバー ID を使用して広告を要求することもできます (プレースメント ID は引き続きサポートされています)。 現在、これは Java (XML ではなく) からのみ使用できます。 インベントリ コードと配置 ID の両方が渡された場合、インベントリ コードは配置 ID ではなくサーバーに渡されることに注意してください。
// Android: Java code that uses inventory code and member ID instead of placement ID (optional) adview.setInventoryCodeAndMemberID(int memberID, String inventoryCode)
opensdk:auto_refresh_interval
またはadview.setAutoRefreshInterval(long interval)
: 自動リフレッシュが有効になっている場合に、広告ビューが新しい広告を要求する間隔 (ミリ秒単位)。 最小期間は 15 秒です。 既定の期間は 30 秒です。 autorefresh を無効にするには、これを 0 に設定します。 例:"60000"
。opensdk:ad_width
またはadview.setAdSize(int width, int height)
: サーバーから要求するアドバタイズの幅。 これが設定されていない場合、SDK は 少なくともandroid:layout_width
の広告を要求します。 Java メソッドsetAdSize
は、幅と高さを同時に設定します。 例:"320"
。opensdk:ad_height
またはadview.setAdSize(int width, int height)
: ビューの高さ。 Java メソッドsetAdSize
は、幅と高さを同時に設定します。 例:"50dp"
。
XML を使用している場合は、アプリケーションを xmlns:opensdk
記述する名前空間属性をレイアウト タグに追加する必要があります RelativeLayout
。たとえば、これは、、 LinearLayout
、または FrameLayout
です。
// Android: XML to configure the banner ad view (optional)
xmlns:opensdk="https://schemas.android.com/apk/res/com.example.SimpleBanner"
XML でバナーを宣言する方法を次に示します。 以下の 「YOUR PLACEMENT ID」をアクティブなプレースメント ID に置き換える必要があることに注意してください。
注:
XML と Java (loadAd
) の両方を使用して を定義する場合は、XML または Java で を定義BannerAdView
auto_refresh_interval
します。 両方で定義 auto_refresh_interval
しないでください。
// Android: XML to declare banner ad view (optional)
<com.appnexus.opensdk.BannerAdView
android:id="@+id/banner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
opensdk:placement_id="YOUR PLACEMENT ID"
opensdk:auto_refresh_interval="60000"
opensdk:adWidth="320"
opensdk:adHeight="50"
opensdk:should_reload_on_resume="true"
opensdk:opens_native_browser="true"
android:expands_to_fit_screen_width="false"
/>
広告を表示するには、 を設定する BannerAdView
必要があります。 必要な方法は setPlacementID
のみですが、広告サイズを設定することをお勧めします。 ここで指定する高さと幅は、広告の配置のサイズと一致している必要があることに注意してください。 次のコードは、バナー広告を示しています (配置 ID が 300x50 の配置を指していることを前提としています)。
この簡単な例では、SDK によって提供されるすべての機能を利用するわけではありません。たとえば、ユーザーの年齢と性別を渡したり、広告クリックでデバイスのネイティブ ブラウザーを開く必要があるかどうかも確認できます。
注:
ベスト プラクティスとして:
- すべての SDK メソッドは、メイン スレッドで呼び出す必要があります。
activityOnDestroy()
は、破棄されると予想される BannerAdView に対して呼び出す必要があります。
// Android: Java to show a banner ad
package com.example.simplebanner;
import android.os.Bundle;
import android.os.Handler;
import android.app.Activity;
import android.widget.FrameLayout;
import com.appnexus.opensdk.*;
import com.appnexus.opensdk.R.*;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Create the AdView and set its placement ID. Tweak a few other settings.
final BannerAdView bav = new BannerAdView(this);
bav.setPlacementID("1326299");
bav.setAdSize(300, 50);
bav.setAutoRefreshInterval(60000); // Set to 0 to disable auto-refresh
bav.setShouldServePSAs(true);
// Add the AdView to our layout 'n stuff.
FrameLayout layout = (FrameLayout)findViewById(android.R.id.content);
layout.addView(bav);
bav.loadAd();
}
@Override
protected void onDestroy() {
if (bav != null) {
bav.activityOnDestroy();
}
super.onDestroy();
}
}