做Admob要使用AdMob奖励视频点播和中介吗
本文目录
怎么使用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强大的数据分析能力,为广告主与网站主搭建起高效的广告投放与收益模式。











