[AIR] NativeExtension在IOS下的开发实例 --- Flex库项目的创建(二)
2014-07-04 10:32
399 查看
来源:http://bbs.9ria.com/thread-102038-1-1.html
上一章,我已经介绍了如果创建IOS库文件,并定义了两个方法ShowIconBadageNumber和InitNativeCode。好了。这一篇,我们主要来学习一下,如果创建Flex库项目。
(小提示,要安装Flash Builder4.6的时候,要把以前的Flash BUilder4.5卸载,不然会造成安装不成功的。)
1,打开安装好的Flash Builder 4.6 Prelease,创建一个Flex库项目。(小提示,这里建议用SDK4.5.1.不要用4.6.因为本人在发展用4.6的时候打包ANE有点问题。)
(在配置一项确保选中的是通用库(适用于Web,桌面和手机项目),Flash SDK选4.5.1.如果安装好后没有。请去opensource.adobe.com下载一下该SDK)
2,OK,创建好之后,新建一个类文件,用来供后面的测试ANE可用。我们这里为了测试之前在Xcode定义的两个方法,内容如下:
package com.coolexp
{
import flash.external.ExtensionContext;
public class ANELibUtils
{
private static var extContext:ExtensionContext = null;
public function ANELibUtils()
{
if (!extContext)
{
initExtension();
}
}
public static function showBadageNum(num:int):int{
if (!extContext)
{
initExtension();
}
return int(extContext.call("ShowIconBadageNumber",num));
}
//Initialize the extension by calling our "initNativeCode" ANE function
private static function initExtension():void
{
trace ("Vibration Constructor: Create an extension context");
// The extension context's context type is NULL, because this extension
// has only one context type.
extContext = ExtensionContext.createExtensionContext("com.coolexp.ANELib", null);
//com.coolexp.ANELib这里我们用这个ExtensionID,确保后面在打包ANE文件的时候一致就可以了。
extContext.call("initNativeCode");
}
}
}
复制代码
3,OK,Build项目,会生成一个SWC后缀后的文件,复制一份出来,把SWC改成ZIP,解压,里面有一个XML文件,一个SWF文件,复制出来。各用。再把SWC文件也复制出来,备用。
4.新建一个extension.xml的文件,内容如下:
(如果下面的com.coolexp.ANELib,要跟上面的AS类文件里一致,libCoolExpLibANEIOS.a. 就是我们第一篇文章里得到文件)
<extension xmlns="http://ns.adobe.com/air/extension/2.5">
<id>com.coolexp.ANELib</id>
<versionNumber>1</versionNumber>
<platforms>
<platform name="iPhone-ARM">
<applicationDeployment>
<nativeLibrary>libCoolExpLibANEIOS.a</nativeLibrary>
<initializer>ExtInitializer</initializer>
<finalizer>ExtFinalizer</finalizer>
</applicationDeployment>
</platform>
</platforms>
</extension>
复制代码
5.OK,这部分到此就OK了。
下面是Actionscript Library的项目下载地址: <ignore_js_op>
CoolExpANELib.fxpl.zip (2.22 KB, 下载次数: 194)
上一章,我已经介绍了如果创建IOS库文件,并定义了两个方法ShowIconBadageNumber和InitNativeCode。好了。这一篇,我们主要来学习一下,如果创建Flex库项目。
(小提示,要安装Flash Builder4.6的时候,要把以前的Flash BUilder4.5卸载,不然会造成安装不成功的。)
1,打开安装好的Flash Builder 4.6 Prelease,创建一个Flex库项目。(小提示,这里建议用SDK4.5.1.不要用4.6.因为本人在发展用4.6的时候打包ANE有点问题。)
(在配置一项确保选中的是通用库(适用于Web,桌面和手机项目),Flash SDK选4.5.1.如果安装好后没有。请去opensource.adobe.com下载一下该SDK)
2,OK,创建好之后,新建一个类文件,用来供后面的测试ANE可用。我们这里为了测试之前在Xcode定义的两个方法,内容如下:
package com.coolexp
{
import flash.external.ExtensionContext;
public class ANELibUtils
{
private static var extContext:ExtensionContext = null;
public function ANELibUtils()
{
if (!extContext)
{
initExtension();
}
}
public static function showBadageNum(num:int):int{
if (!extContext)
{
initExtension();
}
return int(extContext.call("ShowIconBadageNumber",num));
}
//Initialize the extension by calling our "initNativeCode" ANE function
private static function initExtension():void
{
trace ("Vibration Constructor: Create an extension context");
// The extension context's context type is NULL, because this extension
// has only one context type.
extContext = ExtensionContext.createExtensionContext("com.coolexp.ANELib", null);
//com.coolexp.ANELib这里我们用这个ExtensionID,确保后面在打包ANE文件的时候一致就可以了。
extContext.call("initNativeCode");
}
}
}
复制代码
3,OK,Build项目,会生成一个SWC后缀后的文件,复制一份出来,把SWC改成ZIP,解压,里面有一个XML文件,一个SWF文件,复制出来。各用。再把SWC文件也复制出来,备用。
4.新建一个extension.xml的文件,内容如下:
(如果下面的com.coolexp.ANELib,要跟上面的AS类文件里一致,libCoolExpLibANEIOS.a. 就是我们第一篇文章里得到文件)
<extension xmlns="http://ns.adobe.com/air/extension/2.5">
<id>com.coolexp.ANELib</id>
<versionNumber>1</versionNumber>
<platforms>
<platform name="iPhone-ARM">
<applicationDeployment>
<nativeLibrary>libCoolExpLibANEIOS.a</nativeLibrary>
<initializer>ExtInitializer</initializer>
<finalizer>ExtFinalizer</finalizer>
</applicationDeployment>
</platform>
</platforms>
</extension>
复制代码
5.OK,这部分到此就OK了。
下面是Actionscript Library的项目下载地址: <ignore_js_op>
CoolExpANELib.fxpl.zip (2.22 KB, 下载次数: 194)
相关文章推荐
- [AIR] NativeExtension在IOS下的开发实例 --- IOS项目的创建 (一)
- [AIR] NativeExtension在IOS下的开发实例 --- 新建项目测试ANE(四)
- [AIR] NativeExtension在IOS下的开发实例 --- ANE文件的打包(三)
- 【iOS-cocos2d-X 游戏开发之四】Cocos2dX创建Android NDK新项目并编译导入Eclipse中正常运行!
- 与 Xcode 相比,用 Adobe AIR/Flex做 iOS 开发有哪些优势和局限?
- Arcgis api for flex项目实例—开发篇(3):地图级别控制器
- iOS开发 -- Xcode7如何创建项目启动图!?
- Flair–一个让你在线创建Flex/AIR应用程序的项目
- 【iOS-cocos2d-X 游戏开发之四】Cocos2dX创建Android NDK新项目并编译导入Eclipse中正常运行! 推荐
- Arcgis api for flex项目实例—开发篇(4):测距工具
- C#软件开发实例.私人订制自己的屏幕截图工具(二)创建项目、注册热键、显示截图主窗口
- 用 Adobe AIR/Flex 做 iOS 开发有哪些优势和局限?
- 使用Swift开发IOS项目、UI创建、方法调用
- 与 Xcode 相比,用 Adobe AIR/Flex做 iOS 开发有哪些优势和局限?
- Arcgis api for flex项目实例—开发篇(5):查询
- Ruby on Rails(ROR) 实例开发之一 创建开发项目环境
- 【iOS-cocos2d-X 游戏开发之四】Cocos2dX创建Android NDK新项目并编译导入Eclipse中正常运行!
- iOS开发 从一个空项目创建ViewController和xib
- C#软件开发实例.私人订制自己的屏幕截图工具(二)创建项目、注册热键、显示截图主窗口
- iOS 9应用开发教程之创建iOS 9项目与模拟器介绍