跳到正文

工具与效率

做Admob要使用AdMob奖励视频点播和中介吗

本文目录

  1. 怎么使用AdMob中介界面
  2. AdSense、AdMob和Ad Manager三者间有什么不同
  3. admob和adsense区别

怎么使用AdMob中介界面

1.集成 AdMob广告

请按照将AdMob广告集成到应用中的相同说明操作。要集成非插页式广告(横幅尺寸、页首横幅尺寸等),请遵照admob里集成KeyMob横幅式广告教程说明。要集成插页式广告(占据整个屏幕的全屏广告),请遵照admob里集成KeyMob插页式广告教程说明。

完成这些集成步骤之后,您需要执行下文介绍的一些小修改,将AdMob广告展示位置改为中介展示位置,从而展示来自多个广告网络的广告。

2.添加广告网络适配器和SDK

现在您可以下载并向项目中添加相关广告网络的适配器和 SDK,以便投放来自这些广告网络的广告。您可以在中介网络页面上找到这些广告网络的链接。

要在Xcode中添加您下载的广告网络适配器/SDK,请右键点击您的项目,然后点击Add Files to<project>(将文件添加到<项目>)

3.添加必需的链接器标记

现在您需要将-ObjC添加到应用目标的构建设置中的 Other Linker Flags(其他链接器标记):

1:在 Xcode的项目导航器中,按蓝色的顶级项目图标。

2:依次点击目标和Build Settings(构建设置)标签。

3:在Other Linker Flags(其他链接器标记)下,将-ObjC同时添加至 Debug(调试)和 Release(发布)。

4.加入广告网络配置

您需要加入所选的广告网络要求的框架、编译器标记或链接器标记。为方便您查阅,中介网络页面中提供了相应链接,指向针对每个广告网络的具体说明。

您无需撰写额外的代码来创建每个广告网络的广告视图。AdMob Mediation SDK会根据需要调用每个广告网络的适配器和 SDK以创建广告。下文将介绍如何设置中介监听器,以便您收到所有广告网络的广告事件通知。

5.(可选)指定其他请求参数

您可以视需要在请求中添加用户的地理位置、性别和生日。这些不是必需的参数,但是广告网络可以使用它们投放定位更精确的广告。我们提供了用于设置生日和地理位置的方法,还提供了用于设置性别的属性。系统会将这些信息传递给所有接受这些参数的广告网络。请查看以下示例:

-(void)setBirthdayWithMonth:(NSInteger)m day:(NSInteger)d year:(NSInteger)y;

-(void)setLocationWithLatitude:(CGFloat)latitude longitude:(CGFloat)longitude accuracy:(CGFloat)accuracyInMeters;

@property(nonatomic, assign) GADGender gender;

typedef enum{

kGADGenderUnknown,

kGADGenderMale,

kGADGenderFemale

} GADGender;

一些广告网络接受用户收入或横幅广告颜色等其他参数。广告网络会逐渐在它们的中介适配器中添加对这些具体参数的支持,不过目前还无法传递针对特定广告网络的参数。

6.(可选)设置事件通知

要收到有关广告生命周期事件(例如展示)的通知,您可以实现GADBannerViewDelegate。在使用中介时,此委托会自动将您正在中介的所有广告网络的事件通知给您。例如,来自任意广告网络的展示会通过GADBannerViewDelegate的方法adViewDidReceiveAd进行报告。

7.(可选)实现自定义事件

利用自定义事件,您可以投放来自您的广告服务器的广告,或投放来自AdMob中介不支持的广告网络的广告,或者调用您选择的任何其他代码。

要创建自定义事件,请定义一个实现GADCustomEventBanner的类。

自定义事件必须在成功收到广告或无法收到广告时向GADCustomEventBannerDelegate回报。为此,您需要调用合适的委托方法(如下所示)。如果无法做到这一点,中介按序调用备用广告的功能就无法正确运行。

理想情况下,您的自定义事件还应通知委托,以报告点击次数和点击操作的结果(呈现全屏模式或退出应用)。这样一来,您的报告中将会显示点击统计信息,您设置的所有事件监听器都会正确运行。

我们会在运行时实例化您的GADCustomEventBanner,并为您设置GADCustomEventBannerDelegate,您无需自行实例化这些类。

下面是一个自定义事件示例:

@implementation MyCustomEventBanner

// Will be set by the SDK.

@synthesize delegate= delegate_;

#pragma mark-

#pragma mark GADCustomEventBanner

-(void)requestBannerAd:(GADAdSize)adSize

parameter:(NSString*)serverParameter

label:(NSString*)serverLabel

request:(GADCustomEventRequest*)request{

// TODO: Use the parameters and self.delegate to make a banner request to your

// ad network. Remember to set this class to be your banner's delegate.

}

#pragma mark-

#pragma mark MyBanner Callbacks

-(void)adViewDidReceiveAd:(MyBanner*)view{

[self.delegate customEventBanner:self didReceiveAd:view];

}

-(void)adView:(MyBanner*)view

didFailToReceiveAdWithError:(NSError*)error{

[self.delegate customEventBanner:self didFailAd:error];

}

-(void)adViewWillPresentScreen:(MyBanner*)adView{

[self.delegate customEventBannerWillPresentModal:self];

}

-(void)adViewWillDismissScreen:(MyBanner*)adView{

[self.delegate customEventBannerWillDismissModal:self];

}

-(void)adViewDidDismissScreen:(MyBanner*)adView{

[self.delegate customEventBannerDidDismissModal:self];

}

-(void)adViewWillLeaveApplication:(MyBanner*)adView{

[self.delegate customEventBannerWillLeaveApplication:self];

}

@end

有关详情,请参阅GADCustomEventBanner.h和GADCustomEventBannerDelegate.h文件。

自定义事件可以调用广告请求的方法以访问年龄或性别等请求参数。有关详情,请参阅GADCustomEventRequest.h。

要创建占据整个屏幕的插页式广告自定义事件,而不是横幅广告视图中的自定义事件,请使用GADCustomEventInterstitial取代GADCustomEventBanner(有关详情,请参阅GADCustomEventInterstitial.h和GADCustomEventInterstitialDelegate.h文件)。

8.(可选)检查 adNetworkClassName的值

您可以视需要检查GADBannerView的adNetworkClassName属性,此属性可返回在调用adViewDidReceiveAd回调后提取了当前横幅广告的广告网络的广告网络类名称:

-(void)adViewDidReceiveAd:(GADBannerView*)bannerView{

NSLog(@"Banner adapter class name:%@", bannerView.adNetworkClassName);

}

同样,对于插页式广告,请在interstitialDidReceiveAd中检查GADInterstitial的adNetworkClassName属性:

-(void)interstitialDidReceiveAd:(GADInterstitial*)interstitial{

NSLog(@"Interstitial adapter class name:%@", interstitial.adNetworkClassName);

}

对于标准Google AdMob广告和通过中介投放的 Google AdMob广告,adNetworkClassName会返回GADMAdapterGoogleAdMobAds。对于通过自定义事件获取的广告,该属性会返回GADMAdapterCustomEvents。

9.(可选)处理旋转和全宽横向广告

智能横幅广告仍然属于新鲜事物,因此来自其他广告网络的中介支持较为有限。不过,有几个广告网络支持“细长”的广告格式(在 iPhone上展示的 480x32和在 iPad上展示的 1024x66)。对于这些广告网络,您可以在UIViewController中指定kGADAdSizeSmartBannerLandscape智能横幅广告尺寸,以便在横向模式中投放这些细长的广告尺寸。请参见以下示例代码:

1:定义 adSizeForOrientation:

// Define a common function for choosing an ad size based on the device's

// orientation.

-(GADAdSize)adSizeForOrientation:(UIInterfaceOrientation)orientation{

// Landscape.

// Only some networks support a thin landscape size

//(480x32 on iPhone or 1024x90 on iPad).

if(UIInterfaceOrientationIsLandscape(orientation)){

return kGADAdSizeSmartBannerLandscape;

}

// Portrait.

// Most networks support banner(320x50) and Leaderboard(728x90)

// sizes.

if(UI_USER_INTERFACE_IDIOM()== UIUserInterfaceIdiomPad){

return kGADAdSizeLeaderboard;

} else if(UI_USER_INTERFACE_IDIOM()== UIUserInterfaceIdiomPhone){

return kGADAdSizeBanner;

}

// Unknown idiom.

return kGADAdSizeBanner;

}

2:在创建广告时调用尺寸选择函数:

{

// Call the common function you've defined to choose the appropriate ad size

// at ad creation time.

GADAdSize adSize= [self adSizeForOrientation:self.interfaceOrientation];

GADBannerView*adView= [[GADBannerView alloc] initWithAdSize:adSize];

// Request ad

}

3:针对不同的屏幕方向设置广告尺寸:

// In the code of your UIViewController that handles interface rotation, set the

// appropriate ad size.

-(void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)orientation duration:(NSTimeInterval)duration{

self.adView.adSize= [self adSizeForOrientation:orientation];

}

AdSense、AdMob和Ad Manager三者间有什么不同

AdSense、AdMob和Ad Manager三者间的不同主要体现在以下方面:

AdSense:

定位:专为寻求高效广告管理与自动化解决方案的开发者设计的广告联盟。功能:能连接广告客户,提供个性化的广告资源设置,并配备小型广告管理团队。适用对象:适用于需要高度自动化广告流程的发布商。

AdMob:

定位:侧重于移动广告领域的广告联盟和创收平台。功能:帮助移动开发者在全球范围内投放广告,获取深入的分析数据,拓展应用商业活动。适用对象:对于希望通过多元广告联盟合作提高收入的移动开发者,AdMob是理想之选。

Ad Manager:

定位:面向大型发布商,特别是拥有直销业务的全面广告管理平台。功能:提供精细的控制,支持多种广告交易和联盟伙伴。适用对象:特别适合需要管理大型广告网络的开发者。

admob和adsense区别

AdMob和AdSense都是Google提供的广告服务,分别针对广告主和网站主。

AdMob主要服务于移动应用开发者,其中文意思是“AdMob是移动电话广告市场”,开发者可以通过AdMob平台在其移动应用中插入广告,以实现广告展示和收益。

AdMob创建于2006年,总部位于美国加州。移动应用(Mobile App)开发者可以加入AdMob,开启广告轮播功能,从而在AdMob网站上展示广告。iPhone和Android手机用户均能体验到AdMob提供的服务。2009年11月9日,Google以7.5亿股份收购AdMob,正式进入移动设备广告市场。

AdSense则侧重于网站主,它是一个综合了“广告”与“感知”含义的合成词。Google通过分析网站内容,智能投放与之相关的广告,帮助网站主通过网站流量赚取广告收益。

AdSense允许开发者在网站中嵌入代码,根据网站用户属性实时动态显示广告,开发者因此获得广告分成。这不仅适用于PC端网站,也适用于移动端网站。

AdMob面向的是应用开发者,旨在通过移动广告增加应用的可见性和收益;AdSense则针对网站主,通过智能投放相关广告提升网站流量价值。两者均通过Google强大的数据分析能力,为广告主与网站主搭建起高效的广告投放与收益模式。

相关问题

← 返回跨境问答

有用的话,留给自己或同行