谁在MonoTouch iPhone应用程序中使用AdMob?
我们为admob获得的当前sdk是admob_iphone_sdk_20100908.tar.gz
它有两个lib文件,但由于Apple链接器中众所周知的错误,只有NoThumb文件才有用:
libAdMobNoThumb.a (2.464.412 bytes, created on 16 september 2010 at 14:41)
当我们使用以下额外标记链接测试应用程序(只是一个新生成的基于Windows Windows的项目,没有任何更改)时:
-gcc_flags "-L${ProjectDir} -lAdMobNoThumb -force_load ${ProjectDir}/libAdMobNoThumb.a"
mtouch惨遭失败
mtouch失败,没有输出(1)
(我们使用-force_load选项而不是-ObjC选项,如末尾的注释中所示:
http://developer.apple.com/library/mac/#qa/qa2006/qa1490.html)
MT_SampleAdMob.zip测试项目可从博客
获得http://sabonrai.wordpress.com/2009/09/27/monotouch-binding-for-admob/
包含两个旧的NoThumb库:
libAdMobDeviceNoThumb3_0.a (539.288 bytes, created 15 jan 2010 at 03:26)
libAdMobSimulator3_0.a (488.464 bytes, created 5 september 2009)
将libAdMobDeviceNoThumb3_0.a库与以下gcc_flags一起使用时:
-gcc_flags "-L${ProjectDir} -lAdMobDeviceNoThumb3_0 -force_load ${ProjectDir}/libAdMobDeviceNoThumb3_0.a"
构建成功并生成应用程序。
我们还没有在这个应用程序中集成任何admob的东西,所以我们没有说明任何关于admob功能。仅仅是能够与图书馆建立联系,这在尝试使用其功能之前似乎是必不可少的。
我们对官方图书馆没有链接的事实感到沮丧,旧版本链接的地方。此外,尺寸差异相当大:官方文件已膨胀4.5倍!
因此,如果有人在单触应用程序中使用admob,请提供任何相关信息,以便我们继续使用我们的应用程序。
TIA,
Mollyke。
答案 0 :(得分:1)
由于很多人会发现这个问题,你可以在github上发布的adob上使用最新的monotouch绑定https://github.com/dalexsoto/AlexTouch.GoogleAdMobAds
以下是如何使用它以及如何使用其事件
的示例public override void ViewDidLoad ()
{
base.ViewDidLoad ();
var ad = new GADBannerView(new RectangleF(new PointF(0,0), GADBannerView.GAD_SIZE_300x250))
{
AdUnitID = "Use Your AdMob Id here",
RootViewController = this
};
ad.DidReceiveAd += delegate
{
this.View.AddSubview(ad);
Console.WriteLine("AD Received");
};
ad.DidFailToReceiveAdWithError += delegate(object sender, GADBannerViewDidFailWithErrorEventArgs e) {
Console.WriteLine(e.Error);
};
ad.WillPresentScreen += delegate {
Console.WriteLine("showing new screen");
};
ad.WillLeaveApplication += delegate {
Console.WriteLine("I will leave application");
};
ad.WillDismissScreen += delegate {
Console.WriteLine("Dismissing opened screen");
};
Console.Write("Requesting Ad");
ad.LoadRequest(new GADRequest());
}
答案 1 :(得分:0)
只要TouchJSON库也通过gcc_flags链接到应用程序,就可以使用AdMob库。