守望者--AIR技术交流

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

搜索
热搜: ANE FlasCC 炼金术
查看: 3023|回复: 0

[平台接入] Admob ANE使用教程

[复制链接]
  • TA的每日心情
    擦汗
    2018-4-10 15:18
  • 签到天数: 447 天

    [LV.9]以坛为家II

    1742

    主题

    2094

    帖子

    13万

    积分

    超级版主

    Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18

    威望
    562
    贡献
    29
    金币
    51792
    钢镚
    1422

    开源英雄守望者

    发表于 2015-4-23 15:24:28 | 显示全部楼层 |阅读模式
    本帖最后由 破晓 于 2015-4-23 15:30 编辑

    Admob ANE使用教程

    给flash air ios和android移动应用添加Google Admob广告










    简介
      flash移动应用中直接添加广告是不行的,一般的广告平台都没有as3版本的sdk,但是可以通过Adobe Native extention来实现。Admob Ane是google Admob广告的一个插件,可以使我们As3开发者在android和ios应用中添加展示广告,从而增加收入。
    Admob Ane可以在air中添加条形广告和全屏广告,支持ios和android俩个平台,不需要修改代码,刚好符合air跨平台的特点。 Air sdk版本要求3.1或者更高,当然用最新的air 16也没问题,完全支持ios64位和android x86等平台。
    添加插件后的应用在pc上可以正常运行,但是不会展示广告,只有在真实设备上才会有广告。
    注册Admob账号
      在开始代码之前,先去http://www.admob.com上创建账号,然后添加应用和广告单元。创建广告单元完后可以得到广告ID以供代码中使用,格式如ca-app-pub-1131224256498916/7747386983 。
    因为google遭到中国政府的封杀,所以有时候admob的官方网站打不开,那就要找个vpn,通过vpn代理来访问admob。测试admob广告的时候如果经常性不显示广告 也可以手机连接vpn尝试下。
    flex 应用添加Admob 条形广告
      在开始代码之前,需要先把admob.ane添加到编译路径中。
    注意:大部分情况下都直接使用admob_all_in_one.ane文件。admob_without_gp.ane不包含admob android sdk,如果没有使用其他已经包含gps的ane是无法展示广告的。
    1. Admob.getInstance().setKeys("条形广告ID","全屏广告ID");//广告ID是上面提到注册获取到的,这样就设置初始化了Admob,设置ID只需要设置一次,如果后面展示全屏广告等无需再次设置
    2. Admob.getInstance().showBanner(Admob.BANNER,AdmobPosition.BOTTOM_CENTER);//展示广告条,广告条的尺寸为标准的Banner,广告位置是在底部居中
    复制代码
    使用绝对位置展示广告

      上面代码使用的是相对位置的方式展示条形广告,也可以使用Admob Ane的绝对布局方式展示广告
    1. Admob.getInstance().setKeys("条形广告ID","全屏广告ID");//广告ID是上面提到注册获取到的,这样就设置初始化了Admob
    2. Admob.getInstance().showBannerAbsolute(Admob.BANNER,0,100);//展示广告条,广告条的尺寸为标准的Banner,广告位置是顶部往下移动100像素
    复制代码
    as3应用中展示Admob全屏广告教程

      全屏广告盈利单价比banner广告更高,也因为不占固定位置更好控制。air中展示全屏广告也很方便。直接上代码。 代码中添加了admob的事件监听器,在收到全屏广告已经加载成功后,把它展示在屏幕上。
    1. Admob.getInstance().setKeys("条形广告ID","全屏广告ID");//广告ID是上面提到注册获取到的,这样就设置初始化了Admob
    2. Admob.getInstance().addEventListener(AdmobEvent.onInterstitialReceive, onAdEvent);
    3. Admob.getInstance().cacheInterstitial();//展示广告条,广告条的尺寸为标准的Banner,广告位置是顶部往下移动100像素
    4. private function onAdEvent(event:AdmobEvent):void
    5. {
    6.         if (event.type == AdmobEvent.onInterstitialReceive)
    7.         {
    8.                 Admob.getInstance().showInterstitial();
    9.         }
    10. }
    复制代码
    如果不希望在接受完成时就展示广告,也可以在需要的时候调用,先检查是否加载成功,如果成功了就展示
    1. if (Admob.getInstance().isInterstitialReady())
    2. {
    3.         Admob.getInstance().showInterstitial();
    4. }
    复制代码
    给admob设置额外变量参数

      有时候想对admob广告进行更细的控制,例如应用是否是在开发进行中,应用是否是儿童应用,广告位置,颜色等。这些设置ane都有接口实现。 额外参数的传入一般是在show接口的后面添加个参数,如下例子
    1. var extraParam:ExtraParameter=new ExtraParameter();//额外参数控制对象
    2. //extraParam.isChildApp=true;//设定是否是儿童应用
    3. extraParam.testDeviceID="true";// 设定是否是在开发和测试中,如果是android的直接设定true就会展示测试广告,如果是ios则需要获取设备ID才能展示测试广告
    4. extraParam.setLocation(40, 40);//设定位置
    5. extraParam.birthday=new Date();//设定用户生日
    6. extraParam.contentUrl="http://www.google.com";
    7. extraParam.keyWord="air admob ane";//设定关键字
    8. Admob.getInstance().showBanner(Admob.BANNER,AdmobPosition.BOTTOM_CENTER,extraParam);
    复制代码
    添加修改配置

      对于air android应用需要配置权限和activity才能显示广告。在xxx-app.xml中添加下面的代码。对于IOS应用无需额外配置。
    注意:flash cc,flash cs 工具会自动修改xxx-app.xml文件,从而导致配置总是失败。解决办法是在flash cc的右侧导出面板中把配置管理中的自动选项改成手动管理。
    1. <android>
    2.         <manifestAdditions><![CDATA[
    3.                         <manifest android:installLocation="auto">
    4.                           <uses-permission android:name="android.permission.INTERNET" />
    5.                             <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
    6.                             <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
    7.                              <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
    8.                              <application>
    9. <meta-data android:name="com.google.android.gms.version"
    10.         android:value="@integer/google_play_services_version" />
    11.                                      <activity android:name="com.google.android.gms.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/>
    12.                              </application>
    13.                         </manifest>
    14.                 ]]></manifestAdditions>
    15.     </android>
    复制代码


    本文来自:http://www.cuo.so/ane-list/admob-ane.html


    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    守望者AIR技术交流社区(www.airmyth.com)
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    
    关闭

    站长推荐上一条 /4 下一条

    QQ|手机版|Archiver|网站地图|小黑屋|守望者 ( 京ICP备14061876号

    GMT+8, 2019-11-21 11:10 , Processed in 0.048430 second(s), 38 queries .

    守望者AIR

    守望者AIR技术交流社区

    本站成立于 2014年12月31日

    快速回复 返回顶部 返回列表