Flex & Android开发环境搭建
最近听朋友说到可以在android做Flex开发,十分感兴趣,故简单研究一下开发环境和编译,在此分享,如果有喜欢的朋友可以研究一下。
前言
实现Android中Flex开发的环境搭建,不包含android平台本身的环境搭建。
未标注的相关参考内容均来自Adobe官方网站。
Flex在android中架构简述
由于本人之前并不了解Flex,故此处只对Flex在android的架构情况进行简单描述。首先要明确什么是Flex?
Flex本身就是软件开发架构,用于实现富互联网应用,目前多用于Web相关开发,此文中将不涉及相关内容,只针对mobile开发部分。Flex不是一种语言,它其实包含三种编程语言:MXML、ActionScript、FXG (Flash XML Graphics),从此方面也可以看出今后Flex工程其实也将主要包含这三部分内容。同时明确,Flex架构中的展示部分其实就是Flash (.fla)内容。
Flex本身可以与Java .net开发平台语言结合,针对Android开发,当然是与Java结合。同时,Flex是有自己的SDK (Software Development Kit)和android SDK目的一样,稍后将会使用。
了解了Flex,再说一下AIR (Adobe Integrated Runtime)看全称就很容易理解,它是一个解决方案平台,实现针对adobe产品,跨平台运行Flash等基于web的内容。起初应该是希望将Flash应用移植到电脑桌面应用来。当然这个平台也将支撑android中的Flex开发应用。
我们需要在在android平台上安装AIR运行环境,然后才可以运行Flex开发的anroid应用程序。
Flex应用程序在android编译过程简述
编译时,fla文件、.as文件、工程资源文件 三部分将通过ActionScript编译器,编译成.swf文件—包含ABC (ActionScript Byte Code) ,并打包成android .apk文件
运行是,包含在apk文件中的swf文件将通过AVM2 (ActionScript Virtual Machine) 将ABC转换成本机可执行的机器代码,有AIR运行环境进行执行。
参考Professional Flash® Mobile Development: Creating Android™ and iPhone® Applications ISBN: 978-0-470-62007-6
好原理搞清楚后,开始搭建开发环境。
环境搭建及测试
环境搭建及测试基础环境
操作系统: Windows 7 64bit
Android: Android2.2(2.3发布的安装环境)
Java: Java 6 update 23
其它: Adobe AIR 2.5
已经安装好android基础编译环境,再次基础上进行Flex环境搭建测试工作。
1. 首先下载:http://labs.adobe.com/technologies/flashbuilder_burrito
此为目前最新的测试版,有较多bug,目前只有此版本支持相关开发,默认安装即可。Flash builder也是基于Eclipse开发出来的IDE环境
2. 创建android 2.2 emulator
应注意创建SDCard大小,建议为1024MB,其它可以自己选择,我创建显示为WVG800
3. 安装Flash Builder中的AIR运行环境给android虚拟机
Adobe\Adobe Flash Builder Burrito\sdks\4.5.0\runtimes\air\android\emulator
目录下的Runtime.apk
启动android 2.2 虚拟机并在命令窗口中执行
adb install runtime.apk 安装至android 2.2
4. 配置Flex SDK环境变量
我们要使用的是AIR2.5的运行环境,对应的是4.5.0的sdk开发包,故在Path环境变量中添加以下目录
<你的安装路径>\Adobe\Adobe Flash Builder Burrito\sdks\4.5.0\bin
5. 运行Flash Builder
此编辑工具有60天的试用期。
创建工程并测试
1. 创建手机开发工程
File>New>Flex Mobile Project
点击完成,完成创建
2. 点击运行
选择On Desktop运行,将弹出windows窗口进行运行,这将运行在Windows自己的AIR环境中。
这一步应该很顺利
3. 创建P12证书
没有此证书,无法将应用程序发布到android emulator或者手机中
选择工程,并在菜单中选择
File>Export>Flash Builder>Release Build
默认下一步就好
点击创建 Create 按钮,创一个新的个人证书
点击OK返回上一页面。
4. 再次运行,在手机上或emulator上
在点击运行,选择On device
这里将可以android手机与电脑连接调试,也可以在emulator上运行。此处是由一个问题的,由于这个测试版并没有考虑在emulator编译命令,故直接运行将只能在手机上运行,如果需要在android emulator上运行的话,有两个办法:
A. 创建build.xml指定编译方式
B. 通过adt命令实现手动编译
adt 命令如下,在工程中的bin-debug目录中执行
adt -package -target apk-emulator -storetype pkcs12 -keystore ../cert.p12 myApp.apk myApp-app.xml myApp.swf icons
其中cert.p12 为你创建的证书、myApp.apk为你要生成的android安装文件、myApp-app.xml 和 myApp.swf均为flex工程中文件,请与之对应、icons为你的资源文件目录
编译过程中需要输入你的证书密码,就是之前创建时输入的。创建好后,通过adb install进行安装。
打开android模拟器,点击运行成可以正常执行就成功了。
其中 –target参数有三个分别为 apk 对应实际物理设备、apk-emulator 对应android 模拟器、apk-debug对应调试环境
注:参考http://help.adobe.com/en_US/air/build/WSfffb011ac560372f-5d0f4f25128cc9cd0cb-7ffb.html
Flash Builder默认情况下是执行apk参数,故编译出来的程序无法在android模拟器中执行。
至此环境搭建完毕,可以开始flex在android中的开发了。
程序开发例子可以在
http://labs.adobe.com/technologies/flexsdk_hero/samples/ 中找到
预计可以通过Flex开发方式做出更加漂亮的操作界面程序,后续深入研究一下,现在这样的开发模式好像刚刚起步,还有很多需要完善的地方。
如果转载请注明来在博客园的Ginoz空间。