来源:http://www.adsmogo.com/help/iosANE

一、iOS ANE植入流程

Step 1:创建Flex工程
1.1 启动Flash Builder 4.6.0, 选择“File”->“New”->“Flex Mobile Project”,如下图所示:

1.2 填写Project name后点击“Next”,进入下图所示界面:

1.3 Target platforms只勾选“Apple iOS”,然后点击“Finish”,完成项目创建。
Step 2:配置项目
2.1 选中项目,单击右键。在弹出的菜单中选择“Run As”->“Run Configurations…”,进入如下视图:

2.2 点击“Run”, Flash模拟器将运行。出现如下界面,完成Flex项目创建。
Step 3:添加ANE
3.1 右键选择工程,选择“Properties”,在如下界面,选择“Flex Build Path”->“Native Extensions”,点击“Add ANE…”

3.2 弹出ANE文件选择路径,点击Browse... 找到ANE路径,添加ANE文件。

3.3 点击“OK”后,可以在Native Extensions看到已经添加的ANE。如下图所示:
Step 4:配置证书,配置iOS SDK路径
4.1 选择“Flex Build Packaging”->“Apple iOS”->“Digital Signature”,配置Certificate、Provisioning file文件路径。

4.2 选择Native Extensions,选中Package。然后点击Apple iOS SDK右侧“Browse…”,选择iOS SDK路径。配置完成后,点击OK。如下图:
Step 5:将LBSSDK.framework放到Step 4中选择的SDK的系统Framework中
以iOS5 SDK为例:
    iOS5 SDK路径 
    /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk
    那么将放到
    /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk/System/Library/Frameworks/
Step 6:编辑广告代码
选择项目中src/views下的mxml文件,打开即可编辑,添加如下代码:
<?xml version="1.0" encoding="utf-8"?>
<s:View xmlns:fx="http://ns.adobe.com/mxml/2009"
     xmlns:s="library://ns.adobe.com/flex/spark" title="AdsMoGoView"
     creationComplete="setupAdsMoGoView(event)"
>
<fx:Declarations>
   <!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>

<fx:Script>
   <![CDATA[
   import com.adsmogo.AdsMoGoView;
  import mx.events.FlexEvent;
   import spark.events.ViewNavigatorEvent;
   private var adsMoGoView:AdsMoGoView;

protected function setupAdsMoGoView(event:FlexEvent):void{
     try{
     adsMoGoView = new AdsMoGoView();
adsMoGoView.initAdView("ad01030cffa44cab9a664a6ed3f52325",AdsMoGoView.AdViewTypeNormalBanner,false);
     adsMoGoView.setAdsMoGoViewOrigin(0,50);
      }
     catch (e:Error) {}
   }

protected function releaseAdsMoGoView(event:ViewNavigatorEvent):void
   {
     try {
      adsMoGoView.releaseAdsMoGoView();
    } catch (e:Error) {}
   }
  ]]>
</fx:Script>
</s:View>

Step 7:打包生成ipa
7.1 右键选择“Run As”->“Run Configurations…”,在弹出窗口中选择“On device”,如下图所示:

7.2 点击“Run”,弹出窗口要求输入密码,如下图所示:

7.3 输入证书密码后等待完成打包,如下图所示:

7.4 打包完成出现如下窗口:

7.5 在工程的项目“bin-debug”目录下找到ipa文件,如下图所示:

7.6 将.ipa安装到真机,运行。
二、AdsMOGO iOS ANE API说明
1. AdsMoGoView 方法
1.1 实例方法
public function initAdView(ak:String, adType:int,
expressMode:Boolean):AdsMoGoView

ak:芒果ID,在芒果网站上注册app时生成。
adType 类型:
public static const AdViewTypeNormalBanner:int = 1;
public static const AdViewTypeLargeBanner:int = 2;
public static const AdViewTypeMediumBanner:int = 3;
public static const AdViewTypeRectangle:int =4;
public static const AdViewTypeiPadNormalBanner:int = 8;
AdViewTypeNormalBanner 适用于iphone、ipod touch
AdViewTypeLargeBanner 适用于ipad
AdViewTypeMediumBanner适用于ipad
AdViewTypeRectangle 适用于ipad
AdViewTypeiPadNormalBanner 适用于ipad
expressMode:是否快速模式。false 非快速模式,true 快速模式。

1.2 释放广告
public function releaseAdsMoGoView():void
1.3 设置广告显示或者隐藏
public function setAdsMoGoViewOrigin(x:int, y:int):void
1.4 设置广告位置
public function setAdsMoGoViewHidden(hidden:Boolean):void
2. AdsMoGoEvent
事件类型 事件说明
ADSMOGO_SRARTAD 广告开始请求
ADSMOGO_RECEIVEAD 广告接收失败
ADSMOGO_FAILGOTAD 广告轮空
ADSMOGO_CLICKAD 广告点击
ADSMOGO_COLSEAD 广告关闭
ADSMOGO_PRESENTFULL 广告全屏展示
ADSMOGO_DISMISSFULL 广告全屏消失
ADSMOGO_WEBBROWSERWILLAPPEAR 芒果浏览器展示前回调
ADSMOGO_WEBBROWSERDIDAPPEAR 芒果浏览器展示
ADSMOGO_WEBBROWSERWILLCOLSED 芒果浏览器关闭前回调
ADSMOGO_WEBBROWSERDIDCLOSED 芒果浏览器关闭
ADSMOGO_WEBBROWSERSHARE 芒果浏览器分享
使用方法参考如下(与添加事件监听一样):
adsMoGoView.addEventListener(AdsMoGoEvent.ADSMOGO_CLICKAD,adMoGoEventsFun);
adsMoGoView.addEventListener(AdsMoGoEvent.ADSMOGO_RECEIVEAD,adMoGoEventsFun);

protected function adMoGoEventsFun(event:AdsMoGoEvent):void{
trace(event.adMoGoLevel+event.adMoGoResult);
}

最新文章

  1. 通过jquery的serializearray处理表单数据成json格式,并提交到后台处理
  2. 2016-08-01一起领略ReactJs的风采
  3. 多线程进行http请求
  4. VisualStudio基本使用(1)-显示行号
  5. php 乱码解决
  6. Expecting &quot;jsp:param&quot; standard action with &quot;name&quot; and &quot;value&quot; attributes错误
  7. YUV数据格式
  8. Python 学习笔记(3) - 控制流、函数
  9. Agri-Net poj 1258
  10. C#获取窗口,模拟按键操作
  11. LeetCode 191. Number of 1 Bits Question
  12. WebCollector 2.x 新手教程
  13. 80-th Level Archeology
  14. 用phpstudy搭建dedecms网站验证码出不来解决方案
  15. GitHub 系列之「团队合作利器 Branch」
  16. 在物理内存中观察CLR托管内存及GC行为
  17. 一篇文章彻底弄懂Base64编码原理
  18. 用php实现表格
  19. MySQL 通讯协议
  20. Hadoop项目实战-用户行为分析之应用概述(二)

热门文章

  1. javascript submit() is not a function
  2. k8s 传参给docker env command、args和dockerfile中的entrypoint、cmd之间的关系
  3. remaining connection slots are reserved for non-replication superuser connections
  4. 【转载】 【TensorFlow】static_rnn 和dynamic_rnn的区别
  5. 搭建SpringCloud微服务
  6. 深入学习c++--多线程编程(三)thread的两种死法
  7. glob 遍历文件夹里面文件
  8. E: Unable to correct problems, you have held broken packages-之apt-get 下载报依赖问题
  9. ue4 优化建议与经验
  10. mysql 5.7 sql_mode设置 坑