![](/img/trans.png)
[英]unity app crashes when admob banner ad is requested but works fine for interstitial and video ad
[英]Game crashes when loading Admob smart banner
我只是將游戲升級到Unity 2019.2.0f1和Admob 3.18.2
現在,當我加載智能橫幅時,它崩潰了(其他adsize可以正常工作)。
這是日志:
java.lang.NullPointerException:嘗試在空對象引用08-03 14:57:29.307 19834 19834 E上調用虛擬方法'boolean com.google.android.gms.ads.AdSize.equals(java.lang.Object)' AndroidRuntime:位於com.google.android.gms.internal.ads.zzwu.zza(com.google.android.gms:play-services-ads-lite @@ 18.1.1:248)08-03 14:57:29.307 19834 19834 E AndroidRuntime:com.google.android.gms.internal.ads.zzwu.zza(com.google.android.gms:play-services-ads-lite @@ 18.1.1:87)08-03 14: 57:29.307 19834 19834 E AndroidRuntime:com.google.android.gms.ads.BaseAdView.loadAd(com.google.android.gms:play-services-ads-lite @@ 18.1.1:15)08-03 14 :57:29.307 19834 19834 E AndroidRuntime:com.google.android.gms.ads.AdView.loadAd(com.google.android.gms:play-services-ads-lite @@ 18.1.1:18)08-03 14:57:29.307 19834 19834 E AndroidRuntime:在com.google.unity.ads.Banner $ 5.run(Banner.java:278)08-03 14:57:29.307 19834 19834 E AndroidRuntime:在android.os.Handler。 handleCallback(Handler.java:789)08-03 14:57:29。 307 19834 19834 E AndroidRuntime:在android.os.Handler.dispatchMessage(Handler.java:98)08-03 14:57:29.307 19834 19834 E AndroidRuntime:在android.os.Looper.loop(Looper.java:164)08 -03 14:57:29.307 19834 19834 E AndroidRuntime:位於android.app.ActivityThread.main(ActivityThread.java:6944)08-03 14:57:29.307 19834 19834 E AndroidRuntime:位於java.lang.reflect.Method.invoke (本機方法)08-03 14:57:29.307 19834 19834 E AndroidRuntime:at com.android.internal.os.Zygote $ MethodAndArgsCaller.run(Zygote.java:327)08-03 14:57:29.307 19834 19834 E AndroidRuntime :位於com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
這是代碼:
m_BannerView = new BannerView(adUnitId, AdSize.SmartBanner, AdPosition.Bottom);
m_BannerView.OnAdLoaded += HandleOnAdLoaded;
m_BannerView.OnAdFailedToLoad += HandleOnAdFailedToLoad;
m_BannerView.OnAdOpening += HandleOnAdOpened;
m_BannerView.OnAdClosed += HandleOnAdClosed;
m_BannerView.OnAdLeavingApplication += HandleOnAdLeavingApplication;
AdRequest request = new AdRequest.Builder().Build();
m_BannerView.LoadAd(request);
googleads-mobile-unity github上有一個關於此問題的線程: https : //github.com/googleads/googleads-mobile-unity/issues/987
一名貢獻者回答:我建議使用Unity版本2019.1.11f1,直到我們確定造成這種情況的原因。 我們認為這可能是Unity問題,因為即使proguard關閉,智能標語引用也為空。
luvjungle的解決方案,尤其是Juan Bentel的評論,對我來說就像是一個魅力。至:返回新的AndroidJavaObject(AdSizeClassName,adSize.Width,adSize.Height).GetStatic(“ SMART_BANNER”); – Juan Bentel 8月11日8:03“
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.