AdMobをAndroidアプリに統合しています。追加部分のコードは非常にシンプルで、Google Developer's Guideからほぼまっすぐです。インタースティシャルを実装しようとしています。広告は正常に表示されていますが、私はこれをstackTraceで赤で取得:
E/Ads(21443):JS:Uncaught ReferenceError:AFMA_ReceiveMessage is not defined(null:1)
誰かがそれが何を意味するのか教えてもらえますか?アプリをクラッシュさせないので、このエラーでアプリをリリースしても大丈夫ですか?
編集:このエラーが特定の広告で受信され、他の広告では受信されないことに気づきました(今のところ私の国で2つの広告を取得しているだけです)。だから多分それは出版社の終わりから欠けている何かです。
これがテストデバイスである場合は、AddTestDevice("your tester device code you can got it from logCat when you start the App")
を呼び出す必要があります。そうでない場合は、実稼働環境で正常に機能するはずです。
テスター:
AdView mAdView = (AdView)rootView.findViewById(R.id.adView);
Builder adRequest = new AdRequest.Builder().addTestDevice("3F166F686479332267DD2DCCD89dfwrg");
AdRequest aaa=adRequest.build();
mAdView.loadAd(aaa);
製造:
AdView mAdView = (AdView) findViewById(R.id.adView);
AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest);
広告を読み込むにはスレッドを作成する必要があります。
new Thread(new Runnable() {
public void run() {
here your code to load banner ...
}
}).start();
その他のドキュメントについては、Androidスレッドに関する開発者向けドキュメント: http://developer.Android.com/guide/components/processes-and-threads.html にアクセスしてください。
メインのUiThreadを使用するように求めるエラーが返された場合は、アクティビティで次のコードを使用してください
runOnUiThread(new Runnable() {
public void run() {
interstitialAd.show();
}
});
インタースティシャル広告リクエスト用に個別の広告ユニットIDを作成したことを確認してください。インタースティシャルリクエストにバナー広告ユニットIDを使用する場合、これとまったく同じエラーが発生します。それ以前は機能していましたが、ある時点で変更されました。
アドビューに広告リスナーを使用しなかったため、スタックトレースでこの特定のエラーが発生しました。
それが誰かを助けることを願っています。
yourAdView.setAdListener(new AdListener() {
@Override
public void onAdClosed() {
super.onAdClosed();
}
@Override
public void onAdFailedToLoad(int i) {
super.onAdFailedToLoad(i);
}
@Override
public void onAdLeftApplication() {
super.onAdLeftApplication();
}
@Override
public void onAdOpened() {
super.onAdOpened();
}
@Override
public void onAdLoaded() {
super.onAdLoaded();
}
});
追加するまで同じ問題がありました
compile 'com.google.Android.gms:play-services:7.8.0'
build.gradleで。これは私にとって問題を解決します。