-
Notifications
You must be signed in to change notification settings - Fork 7
フルボード広告実装手順
まだ広告枠作成、SDKダウンロードを行っていない場合、下記リンク先を参照してください。
nend管理画面「新規広告枠の作成」から下記項目を選択し、広告枠を作成します。
- 広告枠のタイプ:「ネイティブアド」
- 広告枠名:任意
- 実装タイプ:「SDK」
- 広告画像選択:「横長(5:3)の大きい広告画像」
- 広告表示数:「1ヶ所のみ」
プロジェクトにSDKを追加していない場合、以下の方法でSDKを追加してください。
まず、NendAdFullBoardLoader
を使用し広告をロードします。
Kotlin
import net.nend.android.NendAdFullBoard
import net.nend.android.NendAdFullBoardLoader
import net.nend.android.NendAdFullBoardView
...
class MainActivity : AppCompatActivity() {
private lateinit var loader: NendAdFullBoardLoader
private var fullBoardAd: NendAdFullBoard? = null // フルボード広告のインスタンス
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_full_board)
// SpotIdとApiKeyにはネイティブ広告の枠(300x180サイズの画像あり)を設定します
loader = NendAdFullBoardLoader(applicationContext, 485520, "a88c0bcaa2646c4ef8b2b656fd38d6785762f2ff")
loader.loadAd(object : NendAdFullBoardLoader.Callback {
override fun onSuccess(ad: NendAdFullBoard?) {
fullBoardAd = ad
}
override fun onFailure(fullBoardAdError: NendAdFullBoardLoader.FullBoardAdError?) {
when (fullBoardAdError) {
NendAdFullBoardLoader.FullBoardAdError.FAILED_AD_REQUEST -> {
// 広告リクエストに失敗しました
}
NendAdFullBoardLoader.FullBoardAdError.FAILED_DOWNLOAD_IMAGE -> {
// 広告画像のダウンロードに失敗しました
}
NendAdFullBoardLoader.FullBoardAdError.INVALID_AD_SPACES -> {
// フルボード広告で利用できない広告枠が指定されました
}
}
}
})
}
}
Java
import net.nend.android.NendAdFullBoard;
import net.nend.android.NendAdFullBoardLoader;
import net.nend.android.NendAdFullBoardView;
...
public class MainActivity extends AppCompatActivity {
private NendAdFullBoardLoader mAdLoader;
private NendAdFullBoard mAd; // フルボード広告のインスタンス
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// SpotIdとApiKeyにはネイティブ広告の枠(300x180サイズの画像あり)を設定します
mAdLoader = new NendAdFullBoardLoader(this, 485520, "a88c0bcaa2646c4ef8b2b656fd38d6785762f2ff");
mAdLoader.loadAd(new NendAdFullBoardLoader.Callback() {
@Override
public void onSuccess(NendAdFullBoard ad) {
mAd = ad;
}
@Override
public void onFailure(NendAdFullBoardLoader.FullBoardAdError fullBoardAdError) {
switch (fullBoardAdError) {
case FAILED_AD_REQUEST:
// 広告リクエストに失敗しました
break;
case FAILED_DOWNLOAD_IMAGE:
// 広告画像のダウンロードに失敗しました
break;
case INVALID_AD_SPACES:
// フルボード広告で利用できない広告枠が指定されました
break;
}
}
});
}
}
次に、ロードした広告を任意の方法で表示します。
-
全画面で表示する場合
Kotlin
public class MainActivity extends AppCompatActivity { ... private fun showFullBoardAd() { fullBoardAd.show(this) } }
Java
public class MainActivity extends AppCompatActivity { ... private void showFullBoardAd() { mAd.show(this); } }
-
広告画面を任意の方法で表示させる場合
Kotlin
public class MainActivity extends AppCompatActivity { ... private fun showCustomFullBoardAd() { // `NendAdFullBoardView#Builder`を使用してフルボード広告を表示する`View`のみを個別に取 得することができます val adView = NendAdFullBoardView.Builder.with(this, fullBoardAd) // `Context`と`NendAdFullBoard`のインスタンスから`Builder`を生成します .enableCloseButton { // クローズボタンを表示させたい場合 // クローズボタンのクリック時の処理を実装します } .build() // e.g. 任意の`ViewGroup`に追加する場合 val root: ViewGroup = ... root.addView(adView) } }
Java
public class MainActivity extends AppCompatActivity { ... private void showCustomFullBoardAd() { // `NendAdFullBoardView#Builder`を使用してフルボード広告を表示する`View`のみを個別に取得することができます View adView = NendAdFullBoardView.Builder.with(this, mAd) // `Context`と`NendAdFullBoard`のインスタンスから`Builder`を生成します .enableCloseButton(new View.OnClickListener() { // クローズボタンを表示させたい場合 @Override public void onClick(View v) { // クローズボタンのクリック時の処理を実装します } }) .build(); // この広告Viewを任意の`ViewGroup`に追加したり、任意の`Fragment`上で表示させることができます // なお、広告Viewは親Viewのサイズから表示サイズを計算するようになっておりますので、 // サイズ不定の`ViewGroup`に追加した場合に正しくレイアウトされない可能性があります // e.g. 任意の`ViewGroup`に追加する場合 ViewGroup root = ...; root.addView(adView); } }
注意: フルボード広告を閉じた際、自動で広告のリロードは行われません。広告内容を更新する場合は再度ロード処理を実行する必要があります。
以下のいずれかの方法で広告の各種イベントを取得できます。
-
全画面で表示する場合
Kotlin
// `NendAdFullBoard.FullBoardAdListener`を実装します class FullBoardDefaultActivity : AppCompatActivity(), NendAdFullBoard.FullBoardAdListener { ... override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_full_board) ... loader.loadAd(object : NendAdFullBoardLoader.Callback { override fun onSuccess(ad: NendAdFullBoard?) { fullBoardAd = ad // イベントリスナーをセットします fullBoardAd!!.setAdListener(this@FullBoardDefaultActivity) } override fun onFailure(fullBoardAdError: NendAdFullBoardLoader.FullBoardAdError?) { ... } }) } override fun onDismissAd(ad: NendAdFullBoard?) { // 広告クローズ時に呼び出されます } override fun onShowAd(ad: NendAdFullBoard?) { // 広告表示時に呼び出されます } override fun onClickAd(ad: NendAdFullBoard?) { // 広告クリック時に呼び出されます } }
Java
// `NendAdFullBoard.FullBoardAdListener`を実装します public class MainActivity extends AppCompatActivity implements NendAdFullBoard.FullBoardAdListener { ... @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ... mAdLoader.loadAd(new NendAdFullBoardLoader.Callback() { @Override public void onSuccess(NendAdFullBoard ad) { mAd = ad; // イベントリスナーをセットします mAd.setAdListener(MainActivity.this); } @Override public void onFailure(NendAdFullBoardLoader.FullBoardAdError fullBoardAdError) { ... } }); } @Override public void onShowAd(NendAdFullBoard nendAdFullBoard) { // 広告表示時に呼び出されます } @Override public void onDismissAd(NendAdFullBoard nendAdFullBoard) { // 広告クローズ時に呼び出されます } @Override public void onClickAd(NendAdFullBoard nendAdFullBoard) { // 広告クリック時に呼び出されます } }
-
広告Viewのみを取得し任意の方法で表示させる場合
Kotlin
// `NendAdFullBoardView.FullBoardAdClickListener`を実装します class FullBoardDefaultActivity : AppCompatActivity(), NendAdFullBoardView.FullBoardAdClickListener { ... private fun showCustomFullBoardAd() { val adView = NendAdFullBoardView.Builder.with(this, fullBoardAd) .adClickListener(this) // クリックリスナーをセットします .build() } ... override fun onClickAd(nendAdFullBoard: NendAdFullBoard?) { // 広告クリック時に呼び出されます } }
Java
// `NendAdFullBoardView.FullBoardAdClickListener`を実装します public class MainActivity extends AppCompatActivity implements NendAdFullBoardView.FullBoardAdClickListener { ... private void showCustomFullBoardAd() { View adView = NendAdFullBoardView.Builder.with(this, mAd .adClickListener(this) // クリックリスナーをセットします .build(); } ... @Override public void onClickAd(NendAdFullBoard nendAdFullBoard) { // 広告クリック時に呼び出されます } }
-
2023年9月1日より、SDK v6.0.0未満では動画広告の配信を停止いたします。新しいバージョンのご利用をご検討ください。
-
Google Play Consoleのデータセーフティに関して、nendSDKのデータ収集項目のページを追加しました。詳しくはこちらをご覧ください。
-
Android 13より、Google Advertising IDのアクセスのために権限の追加を強く推奨しています。詳しくはSDKの組み込み方法をご覧ください。
-
v9.0.0よりSDK内部の依存性及び位置情報機能の完全な削除を行いました。詳しくは更新履歴を御覧ください。
-
らくらくスマートフォンの
F-01L
にて、特定のOSバージョンでバナー広告利用時にアプリがクラッシュするという報告を一部のメディア様から頂いております。詳細はこちらをご確認ください。 -
Google Play Services r30 よりライブラリプロジェクトの提供がなくなり、今後はEclipseプロジェクトへのGoogle Play Servicesの導入が不可能となったため、nendSDKにおいてもEclispeでの導入・開発のサポートを終了させていただきました。
EclipseからAndroidStudioへの移行はこちらをご参照ください。 -
Googleのデベロッパーポリシーの更新に伴い、v3.1.0のSDKよりインタースティシャル広告のアプリ終了時表示機能を廃止させていただきました。
-
Effective September 1, 2023, we will stop serving video ads with SDK under v6.0.0. Please consider using a newer version.
-
For data safety section in Google Play Console, We added a page about data collection used on nendSDK. For details, please see here.
-
Since Android 13, we highly recommend add the permision to access Google Advertising ID. For details, please see About integrate the SDK.
-
In v9.0.0, a new dependency had been added to the sdk and all functions of collecting location data are completely deleted.
-
We have received reports from some media that a model of smartphone,
F-01L
crashes when using banner ads on a specific OS version. For details, please check here. -
nendSDK terminated the introduction and development support of Eclispe as Google Play Services (r30) no longer provides library project and impossible to install Google Play Services to the Eclispe project.
Please check the link below for how to transfer from Eclipse to AndroidStudio. -
With the update of Google Developer Policy, we terminated the function to show interstitial ads before the user closes the app from v3.1.0 SDK.
- バナー型広告
- アイコン型広告
- インタースティシャル広告
- ネイティブ広告
- フルボード広告
- 動画広告
- 動画ネイティブ広告
- Release Notes
- Preparation
- Supported Devices and IDE
- nendSDK Data Collection Items
- nendSDK Privacy Policy
- About Information Button
- Banner Ad
- Icon Ads
- Interstitial Ad
- Native Ad
- Fullscreen Ad
- Video Ad
- Native Video Ad