動画広告を扱うのは初めてです。RewardedVideoAd
ここからの実装の AdMob ガイドと、ここからの Vungle のドキュメントに従いました。これらのガイドに書かれているすべての手順を実行しました。ただし、モバイルにアプリをデプロイすると、RewardedVideoAd
常に読み込みに失敗します。モバイルとエミュレーターでテストしましたが、どれも機能しませんでした。常に onRewardedVideoAdFailedToLoad を呼び出します。両方のデバイスに最新の Google Play Services をインストールしています。あなたにとって重要な場合、私のアプリはまだ Play ストアに展開されていません。何が悪いのかわからない。誰かが問題を指摘できますか?
エラー コードは 3: ERROR_CODE_NO_FILL
私のコード:
public class HomeScreen extends Activity {
RewardedVideoAd videoAd;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.home_screen);
//Some Code
videoAd = MobileAds.getRewardedVideoAdInstance(this);
videoAd.setRewardedVideoAdListener(new RewardedVideoAdListener() {
@Override
public void onRewarded(RewardItem reward) {
Toast.makeText(HomeScreen.this, "onRewarded! currency: " + reward.getType() + " amount: " +
reward.getAmount(), Toast.LENGTH_SHORT).show();
}
@Override
public void onRewardedVideoAdLeftApplication() {
Toast.makeText(HomeScreen.this, "onRewardedVideoAdLeftApplication",
Toast.LENGTH_SHORT).show();
}
@Override
public void onRewardedVideoAdClosed() {
Toast.makeText(HomeScreen.this, "onRewardedVideoAdClosed", Toast.LENGTH_SHORT).show();
}
@Override
public void onRewardedVideoAdFailedToLoad(int errorCode) {
Toast.makeText(HomeScreen.this, "onRewardedVideoAdFailedToLoad", Toast.LENGTH_SHORT).show();
}
@Override
public void onRewardedVideoAdLoaded() {
Toast.makeText(HomeScreen.this, "onRewardedVideoAdLoaded", Toast.LENGTH_SHORT).show();
}
@Override
public void onRewardedVideoAdOpened() {
Toast.makeText(HomeScreen.this, "onRewardedVideoAdOpened", Toast.LENGTH_SHORT).show();
}
@Override
public void onRewardedVideoStarted() {
Toast.makeText(HomeScreen.this, "onRewardedVideoStarted", Toast.LENGTH_SHORT).show();
}
});
Bundle extrasBundle = new Bundle();
extrasBundle.putBoolean("_noRefresh", true);
AdRequest adRequest = new AdRequest.Builder()
.addNetworkExtrasBundle(AdMobAdapter.class, extrasBundle)
.addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
.addTestDevice("D575C31D492903A3BA451D2B2E2BD8E8")
.build();
videoAd.loadAd(getString(R.string.video_ad_unit_id), adRequest);
addLives.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (videoAd.isLoaded()) {
videoAd.show();
}
}
});
}
}
AdMob 広告:
広告メディエーション:
Vungle メディエーションに必要なライブラリを追加しました。
Gradle (プロジェクトレベル):
dependencies {
classpath 'com.google.gms:google-services:3.0.0'
}
Gradle (アプリレベル):
apply plugin: 'com.google.gms.google-services'
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.google.firebase:firebase-ads:9.2.0'
}
Logcat (広告について):
I/Ads: Starting ad request.
W/Ads: Failed to load ad: 3