2

TapJoy Interstitial広告を統合したとき、それはうまく機能していました。しかし今、私はTapjoyが広告を出せない場合、adMob、Mobclixなどの他の広告ネットワークにロールオーバーするメカニズムを持っています。問題は、ロールオーバーメカニズムがTapjoyを除くすべての広告ネットワークで正常に機能していることです。Tapjoyの場合、失敗してadmob、mobclix、またはInmobiにロールオーバーが発生すると、アプリがクラッシュします。クラッシュログ:

java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
    at android.os.Handler.<init>(Handler.java:121)
    at com.mobclix.android.sdk.MobclixFullScreenAdView$AdResponseHandler.<init>(MobclixFullScreenAdView.java:392)
    at com.mobclix.android.sdk.MobclixFullScreenAdView$AdResponseHandler.<init>(MobclixFullScreenAdView.java:392)
    at com.mobclix.android.sdk.MobclixFullScreenAdView.<init>(MobclixFullScreenAdView.java:104)
    at com.apostek.library.AdLibrary.loadInterstial(AdLibrary.java:1091)
    at com.apostek.library.AdLibrary.rollOverInterstial(AdLibrary.java:1450)
    at com.apostek.library.AdLibrary.access$0(AdLibrary.java:1447)
    at com.apostek.library.AdLibrary$9.getFeaturedAppResponseFailed(AdLibrary.java:1408)
    at com.tapjoy.TapjoyFeaturedApp$1.run(TapjoyFeaturedApp.java:98)
    at java.lang.Thread.run(Thread.java:1096)
4

1 に答える 1

2

TapjoygetFeaturedApp()メソッドが新しいスレッドを生成しており、adMob ライブラリがメイン スレッドで実行されることが期待されているようです。メイン スレッドで実行する adMob コードにrunOnUiThreadを使用してみてください。

于 2012-04-19T19:04:28.560 に答える