题记:写这篇博客要主是加深自己对宋体方法的认识和总结实现算法时的一些验经和训教,如果有错误请指出,万分感谢。
第一种方法:通过Google的AdMob SDK 添加
首先浏览官方档文 https://developers.google.com/mobile-ads-sdk/docs/
按步就班注册获取AdMob Publisher ID已及开发SDK包和DEMO程工,确保官方的demo程工能确正行运:
如果没法行运,再仔细浏览官方档文!!
为了事省,就直接在BannerExampleViewController上修改
首先添加两个方法,1个单列1个用于显示告广的方法
+ (BannerExampleViewController* )shareBannerView;
- (id)showAdmob;
把- (void)viewDidLoad方法内容移到- (id)showAdmob;
中,并稍作修改:
- (void)viewDidLoad {
[super viewDidLoad];
}
- (id)showAdmob
{
//Initialize the banner off the screen so that it animates up when displaying
self.adBanner = [[GADBannerView alloc]initWithFrame:CGRectMake(0.0,
self.view.frame.size.height, GAD_SIZE_320x50.width, GAD_SIZE_320x50.height)];
// Note: Edit SampleConstants.h to provide a definition for kSampleAdUnitID
// before compiling.
self.adBanner.adUnitID = @"a15049aa7aa110e";
self.adBanner.delegate = self;
[self.adBanner setRootViewController:self];
//[self.view addSubview:self.adBanner];
[[[UIApplication sharedApplication] keyWindow] addSubview:adBanner_];
[self.adBanner loadRequest:[self createRequest]];
return self.adBanner;
}
接下来实现单列:
static BannerExampleViewController* shareBannerView = nil;
+ (BannerExampleViewController *)shareBannerView
{
if (shareBannerView == nil) {
shareBannerView = [[BannerExampleViewController alloc]init];
}
return shareBannerView;
}
最后实现unity须要的类,创建一个UMob.mm类,该类灰常简略,只有一个方法(用于unity中C#调用),
#import "UMob.h"
#import "BannerExampleViewController.h"
@implementation UMob
extern "C"
{
void _adMob()
{
[[BannerExampleViewController shareBannerView] showAdmob];
}
}
@end
Xcode分部成完。把须要的文件拷贝到unity中,意注文件构结
Unity分部就更easy了。创建一个调用admob的类挂到场景中。
usingSystem.Collections;
usingSystem.Runtime.InteropServices;
public class AdmobCall {
[DllImport ("__Internal")]
private static extern void _adMob();
void Start () {
_adMob();
}
}
第二种方法:通过Unity3d自带的ADBannerView添加,不过他的iTunes的connection要设置为enable。体具代码如下:
using UnityEngine;
using System.Collections;
publicclass ADBannerViewManager :MonoBehaviour
{
#if UNITY_IPHONE
private IEnumerator ShowBanner()
{
while (!_banner.loaded && _banner.error == null)
{
yield returnnull;
}
if (_banner.error == null)
{
_banner.Show();
}
else
{
_banner =null;
}
}
private void Start()
{
_banner =new ADBannerView();
_banner.autoSize =true;
_banner.currentSizeIdentifier =ADSizeIdentifier.Portrait;
_banner.autoPosition =ADPosition.Top;
StartCoroutine(ShowBanner());
}
privateADBannerView _banner;
#endif
}
搞定!build,如果在xcode中行运出错的话,应当是缺乏一些framework,体具少那些,参见文章第一行。
文章结束给大家分享下程序员的一些笑话语录:
程序员的愿望
有一天一个程序员见到了上帝.上帝: 小伙子,我可以满足你一个愿望.程序员: 我希望中国国家队能再次打进世界杯.
上帝: 这个啊!这个不好办啊,你还说下一个吧!
程序员: 那好!我的下一个愿望是每天都能休息6个小时以上.
上帝: 还是让中国国家打进世界杯.