zoukankan      html  css  js  c++  java
  • Unity3D IOS IPhone添加Admob的方法

    原地址:http://dong2008hong.blog.163.com/blog/static/4696882720140403119293/

    首先阅读官方文档https://developers.google.com/mobile-ads-sdk/docs/

    按步就班注册获取AdMob Publisher ID已及开发SDK包和DEMO工程,确保官方的demo工程能正确运行:

    点击浏览下一页

    如果没法运行,再仔细阅读官方文档!!

    为了省事,就直接在BannerExampleViewController上修改

    首先添加两个方法,11个用于示广告的方法

    + (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.heightGAD_SIZE_320x50.widthGAD_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] keyWindowaddSubview: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"

    @implementationUMob

    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();

    }

    }

    搞定!build,如果在xcode中运行出错的话,应该是缺少一些framework,具体少那些,参见文章第一行。

  • 相关阅读:
    树链剖分(转载)
    随机数生成器
    错排公式的理解与推导(转载)
    容斥原理(转载)
    Luogu 3758 [TJOI2017]可乐(有向图邻接矩阵幂的意义 矩阵快速幂)
    vue input复选框checkbox默认样式纯css修改
    vue 页面切换的时候vuex记录之前的滚动条位置
    vue从入门到进阶
    es6 学习笔记
    vue 项目笔记
  • 原文地址:https://www.cnblogs.com/123ing/p/3912024.html
Copyright © 2011-2022 走看看