我正在考虑使用Xamarin.GooglePlayServices.Ads.Lite包https://www.youtube.com/watch?v=6teJvSCg6UA&t=661s,但我找不到在xamarin-forms中嵌入admob的最新说明。
我注册了admob,但只找到了kotlin和java的使用说明。
哪个包当前与xamarin-forms相关?是否有最新的实施指南?
发布于 2021-10-11 06:01:42
您可以创建一个控件,并使用自定义渲染器完成此操作。
自定义控件:
public class AdControlView : View
{
}自定义渲染器:
[assembly: ExportRenderer(typeof(AdControlView), typeof(AdViewRenderer))]
namespace App14.Droid
{
public class AdViewRenderer : ViewRenderer<AdControlView, AdView>
{
public AdViewRenderer(Context context) : base(context)
{
}
string adUnitId = string.Empty;
//Note you may want to adjust this, see further down.
AdSize adSize = AdSize.Banner;
AdView adView;
AdView CreateNativeAdControl()
{
if (adView != null)
return adView;
adUnitId = "ca-app-pub-3940256099942544/6300978111"; //you could create you own unit id.
adView = new AdView(Forms.Context);
adView.AdSize = adSize;
adView.AdUnitId = adUnitId;
var adParams = new LinearLayout.LayoutParams(LayoutParams.WrapContent, LayoutParams.WrapContent);
adView.LayoutParameters = adParams;
adView.LoadAd(new AdRequest
.Builder()
.Build());
return adView;
}
protected override void OnElementChanged(ElementChangedEventArgs<AdControlView> e)
{
base.OnElementChanged(e);
if (Control == null)
{
CreateNativeAdControl();
SetNativeControl(adView);
}
}
}
}创建你自己的应用程序id和unitid,或者你可以在Google Admob上获得测试广告。
有关更多详细信息,请参考我之前所做的案例。How to use App ID in Xamarin Visual Studio
https://stackoverflow.com/questions/69517574
复制相似问题