`
auauau
  • 浏览: 172158 次
社区版块
存档分类
最新评论

iad admob整合代码

    博客分类:
  • iOS
 
阅读更多

#pragma mark iAd

- (void)addIAdBanner {

    // if place the banner on the bottom

    // adView = [[ADBannerView alloc] initWithFrame:CGRectZero];

    

    adView = [[ADBannerView alloc] initWithFrame:CGRectMake(320 - (32 / 2) - 480 / 2, 480 / 2 - (50 - (32 / 2)), 0, 0)];

    

    adView.frame = CGRectOffset(adView.frame, 32, 0);   // hide

    

    adView.delegate = self;

    adView.requiredContentSizeIdentifiers = [NSSet setWithObjects:ADBannerContentSizeIdentifier320x50, ADBannerContentSizeIdentifier480x32, nil];

    adView.currentContentSizeIdentifier = ADBannerContentSizeIdentifier480x32;

    [[[CCDirector sharedDirector] openGLView] addSubview:adView];

    

    // Transform iAd

    adView.transform = CGAffineTransformMakeRotation(CC_DEGREES_TO_RADIANS(90));

    

    iAdBannerIsVisible = NO;

}


- (void)removeIAdBanner {

    // clear iAd

    adView.delegate = nil;

    [adView removeFromSuperview];

    [adView release];

    adView = nil;

    

    iAdBannerIsVisible = NO;

}


- (void)bannerViewDidLoadAd:(ADBannerView *)banner {

    NSLog(@"[iAd]: Ad did load.");

    

    if (!iAdBannerIsVisible) {

        adView.transform = CGAffineTransformMakeRotation(CC_DEGREES_TO_RADIANS(0));

        

        adView.frame = CGRectOffset(adView.frame, -32, 0);

        

        adView.transform = CGAffineTransformMakeRotation(CC_DEGREES_TO_RADIANS(90));

        

        iAdBannerIsVisible = YES;

    }

    

    if (admobBannerIsVisible) {

        // hide it

        adMobAd.transform = CGAffineTransformMakeRotation(CC_DEGREES_TO_RADIANS(0));

        adMobAd.frame = CGRectMake(140 + 48, 215, 320, 48);

        adMobAd.transform = CGAffineTransformMakeRotation(CC_DEGREES_TO_RADIANS(90));

    }

}


- (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error {

    NSLog(@"[iAd]: Faild to load the banner: %@", error);

    

    if (iAdBannerIsVisible) {

        adView.transform = CGAffineTransformMakeRotation(CC_DEGREES_TO_RADIANS(0));

        adView.frame = CGRectOffset(adView.frame, 32, 0);

        adView.transform = CGAffineTransformMakeRotation(CC_DEGREES_TO_RADIANS(90));

        

        iAdBannerIsVisible = NO;

    }

    

    if (admobBannerIsVisible) {

        // show it

        adMobAd.transform = CGAffineTransformMakeRotation(CC_DEGREES_TO_RADIANS(0));

        adMobAd.frame = CGRectMake(140, 215, 320, 48);

        adMobAd.transform = CGAffineTransformMakeRotation(CC_DEGREES_TO_RADIANS(90));

    }

}


- (BOOL)bannerViewActionShouldBegin:(ADBannerView *)banner willLeaveApplication:(BOOL)willLeave {

    NSLog(@"[iAd]: An action was started from the banner. Application will quit: %d", willLeave);

    

    return YES;

}


- (void)bannerViewActionDidFinish:(ADBannerView *)banner {

    NSLog(@"[iAd]: Action finished.");

}

#pragma mark AdMobDelegate methods


- (NSString *)publisherIdForAd:(AdMobView *)adView {

    return @"a14c561cd7cbb82"; // this should be prefilled; if not, get it from  www.admob.com

}


- (UIViewController *)currentViewControllerForAd:(AdMobView *)adView {    

    return controller;

}


- (UIColor *)adBackgroundColorForAd:(AdMobView *)adView {

    return [UIColor colorWithRed:0 green:0 blue:0 alpha:1]; // this should be prefilled; if not, provide a UIColor

}


- (UIColor *)primaryTextColorForAd:(AdMobView *)adView {

    return [UIColor colorWithRed:1 green:1 blue:1 alpha:1]; // this should be prefilled; if not, provide a UIColor

}


- (UIColor *)secondaryTextColorForAd:(AdMobView *)adView {

    return [UIColor colorWithRed:1 green:1 blue:1 alpha:1]; // this should be prefilled; if not, provide a UIColor

}


// Sent when an ad request loaded an ad; this is a good opportunity to attach

// the ad view to the hierachy.

- (void)didReceiveAd:(AdMobView *)adView {

    NSLog(@"AdMob: Did receive ad");

    

    adMobAd.transform = CGAffineTransformMakeRotation(CC_DEGREES_TO_RADIANS(0));

    adMobAd.frame = CGRectMake(140, 215, 320, 48);

    adMobAd.transform = CGAffineTransformMakeRotation(CC_DEGREES_TO_RADIANS(90));

    

    if (iAdBannerIsVisible) {

        // if iAdBannerIsVisible, hide admob banner

        adMobAd.transform = CGAffineTransformMakeRotation(CC_DEGREES_TO_RADIANS(0));

        adMobAd.frame = CGRectMake(140 + 48, 215, 320, 48);

        adMobAd.transform = CGAffineTransformMakeRotation(CC_DEGREES_TO_RADIANS(90));

    }

    

    [[[CCDirector sharedDirector] openGLView] addSubview:adMobAd];

    

    [refreshTimer invalidate];

    refreshTimer = [NSTimer scheduledTimerWithTimeInterval:AD_REFRESH_PERIOD target:self selector:@selector(refreshAd:) userInfo:nil repeats:YES];

    

    admobBannerIsVisible = YES;

}


// Sent when an ad request failed to load an ad

- (void)didFailToReceiveAd:(AdMobView *)adView {

    NSLog(@"field receive admob.");

    

    [adMobAd removeFromSuperview];  

    

    [self performSelector:@selector(requestAd) withObject:nil afterDelay:2.0];

    

    admobBannerIsVisible = NO;

}


- (void)refreshAd:(ccTime)dt {

    NSLog(@"refresh admob.");

    

    [adMobAd requestFreshAd];

}


- (void)requestAd {    

    adMobAd = [AdMobView requestAdWithDelegate:self];

}

分享到:
评论
1 楼 marshluca 2010-08-12  
不错,如果能放一个开关,通过服务端来控制是使用iAd还是Admob就好了.

相关推荐

    iOS中加入iAD和ADMOB广告

    本教程将详细介绍如何在iOS应用中集成两种常见的广告网络:Apple的iAD和Google的ADMOB。 首先,我们来了解这两个广告平台的基础知识: 1. **iAD**:由Apple提供,是专门为iOS和OS X设备设计的内置广告解决方案。...

    IOS应用源码之Ads(AdMob+iAd)Demo.zip

    【标题】"IOS应用源码之Ads(AdMob+iAd)Demo.zip" 指的是一份包含了iOS应用中广告集成的源代码示例,主要使用了Google的AdMob和苹果的iAd两个广告网络。这份源代码可以作为开发者学习如何在iOS应用中集成和管理广告的...

    IOS应用源码之Cocos2d支持iAd的例子代码 iAdCocos2dTest.zip

    "iAdCocos2dTest"这个例子代码应该包含了所有这些步骤的实现,你可以通过阅读和运行代码来更深入地理解这一过程。学习这个示例可以帮助你快速掌握在Cocos2d游戏中加入原生广告的方法,从而提高你的应用盈利能力。

    IOS苹果广告和谷歌广告整合

    本文将深入探讨如何在iOS应用中整合iAd(苹果原生广告服务)与AdMob(谷歌的广告网络平台),以及如何做到无警告、无缝对接。 **一、iAd简介** iAd是苹果公司提供的一个广告服务,允许开发者在iOS和tvOS应用中展示...

    添加iAd代码

    **添加iAd代码详解** 在iOS应用开发中,为了增加收入和提高用户参与度,开发者经常会选择集成广告。苹果公司提供了自己的广告平台——iAd,它允许开发者在App内展示高质量、与应用内容相关的广告。本篇文章将详细...

    iad unity ios 版

    iad unity ios 版 苹果的 IAD 广告代码

    IOS应用源码之._Ads(AdMob+iAd)Demo.zip

    IOS应用源码之._Ads(AdMob+iAd)Demo.zip

    ios-iAd广告.zip

    虽然iAd已不再可用,但开发者可以考虑使用其他广告服务,如Google的AdMob或Facebook Audience Network。这些服务提供了类似的功能,并且在全球范围内有更广泛的广告网络。 **四、最佳实践和注意事项** 1. **用户...

    USB组合设备 Interface Association Descriptor (IAD)1

    USB Interface Association Descriptor (IAD) 是USB复合设备中用于整合多个接口的一种机制。在USB规范中,设备可以被设计成复合设备(Composite Device)或复合设备(Compound Device),两者虽然在中文翻译上容易...

    IAD类型及数据配置

    【IAD类型及数据配置详解】 IAD,全称为Integrated Access Device,即综合接入设备,是一种用于实现传统电话网络(PSTN)与IP网络之间的转换的设备。它主要用于VoIP(Voice over Internet Protocol)服务,使用户...

    Google AdMob 集成文档.

    ADBannerView通过与iAd框架交互,实现广告的下载和展示。 3. ADBannerView的继承关系和遵循的协议: ADBannerView类继承自UIView,并遵循了多个协议,包括UIResponder、NSObject、NSCoding、UIAppearance、...

    华为IAD104H用户手册

    ### 华为IAD104H用户手册关键知识点解析 #### 一、产品概述 - **产品名称**:华为IAD104H综合接入设备 - **用途**:IAD104H是一款用于将传统电话网络接入下一代网络(NGN)的设备,支持多种语音和数据业务。 - **适用...

    unity admob 广告接入demo

    Unity AdMob 广告接入是将Google AdMob广告平台整合到Unity游戏或应用中的过程,以便在用户交互时展示广告并实现收益。本教程将详细解释如何在Android和iOS平台上进行这一操作,并提供一个可测试的demo。 首先,...

    华为IAD基本配置[参照].pdf

    "华为IAD基本配置" 华为IAD基本配置是指华为IAD设备的基本配置操作,包括登录配置环境、命令行使用方法、常用命令、配置设备IP地址、配置系统时间、配置SNMP网管等。下面将对这些知识点进行详细的解释。 登录配置...

    中兴通讯ZXV10-IAD

    ### 中兴通讯ZXV10-IAD:灵活便捷的语音业务解决方案 #### 一、概述 随着网络技术的快速发展,企业对于语音业务的需求也日益增长。为了满足这一需求,中兴通讯推出了ZXV10-IAD系列设备。该系列产品不仅能够提供...

    华为IAD产品线 介绍(单口 双口 4口 8口 32口IAD)

    华为IAD产品线 介绍(单口 双口 4口 8口 32口IAD)支持SIP协议 MGCP协议!

    华为IAD132E(T)语音设备简介资料

    华为 IAD132E(T) 语音设备简介资料 华为 IAD132E(T) 语音网关是基于 IP 的语音/传真(VoIP/FoIP)接入网关,为运营商、企业、小区住宅用户、公司提供高效、高质量的 IP 话音业务。该设备支持 32 路电话使用,具有...

    华为eSpace IAD132E产品手册

    eSpace IAD132E(T) 产品文档 产品版本:V300R001C07SPC700

    中国电信IAD设备技术规范

    【中国电信IAD设备技术规范】是中国电信为了规范下一代网络(NGN)通信终端设备,特别是集成接入设备(IAD)的开发、生产、测试而制定的一份重要技术标准。这份规范基于国际电联(ITU)、互联网工程任务组(IETF)、...

    IAD产品配置与维护PPT课件.pptx

    IAD产品系列包括IAD101H/102H/104H、IAD108E、IAD208E(M)、IAD132E(T)、IAD304/316/332等。这些产品具有灵活的组网能力,提供POTS、IP接口应不同的用户需求,支持DHCP、PPPoE和静态IP地址分配方式,实现语音数据...

Global site tag (gtag.js) - Google Analytics