簡體   English   中英

嘗試使用Google AdMob Xamarin Android插入廣告時出現“ System.NullReferenceException:對象引用未設置為對象實例”

[英]“System.NullReferenceException: Object reference not set to an instance of an object” when trying to insert ads using google AdMob Xamarin Android

我一直在使用Android的xamarin上使用Ads時遇到問題,希望有更多專業知識的人可以提供一些建議。 這是我使用或至少嘗試過使用Xamarin Android構建的第一個應用程序。 在版面配置中,我留了一個廣告空間。 我遵循了多個指南,包括;

如何在最新的MonoGame Android(XNA)中集成AdMob廣告?

https://blog.tommyparnell.com/admob-with-xamarin-part-1-banner-ads/

我遵循了這兩個指南,每次嘗試運行應用程序時都遇到相同的錯誤

我主要活動中的語法如下:

    AdRequest adRequest = new AdRequest.Builder().Build();
    layout.LoadAd(adRequest);

包括此內容時,將出現以下運行時錯誤;

    Caused by: md52ce486a14f4bcd95899665e9d932190b.JavaProxyThrowable:      System.NullReferenceException: Object reference not set to an instance of an object
    06-05 09:39:21.062 E/AndroidRuntime( 7212): at MyApp.Android.MainActivity.OnCreate (Android.OS.Bundle) [0x00028] in c:\Users\User\Dropbox\Projects\MyApp_Xamarin\MyApp.Android\MainActivity.cs:44

我嘗試刪除並重新創建Google Play服務參考。 我確保清單中有相關的活動標簽

    <activity android:name="com.google.android.gms.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" />

我完全不知所措。 我收到的錯誤看起來像Java錯誤,盡管由於我在c#環境中,所以無法直接訪問和調試我可以告訴的錯誤。 經過3天沒有解決此問題,我轉向StackOverflow,如果有人可以指出正確的方向,我將不勝感激!

我正在使用Visual Studio 2013

干杯。

我已將admob添加到Xamarin Forms應用程序中,但未將其添加到XNA游戲中。 這是我在github上的應用程序的鏈接

var adMobElement = Element as AdMobBuddyControl;
if ((adMobElement != null) && (e.OldElement == null))
{
    AdView ad = new AdView(this.Context);
    ad.AdSize = AdSize.Banner;
    ad.AdUnitId = adMobElement.AdUnitId;
    var requestbuilder = new AdRequest.Builder();
    ad.LoadAd(requestbuilder.Build());
    this.SetNativeControl(ad);
}

確保在清單的應用程序標簽中包含以下內容:

<meta-data android:name="com.google.android.gms.version" 
           android:value="@integer/google_play_services_version" />
<activity android:name="com.google.android.gms.ads.AdActivity" 
          android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" />

並且此權限:

<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />

我有點摸索着通過它。 您可能不需要我提到的所有內容,但希望它可以為您提供一個起點。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM