基于AIR Android应用开发1:环境搭建

简介:




本文转自吴秦博客园博客,原文链接:http://www.cnblogs.com/skynet/archive/2013/02/18/2915083.html,如需转载请自行联系原作者基于AIR Android应用开发

——环境搭建

1. AIR SDK之于Android

AIR SDK是一组打包和部署AIR应用程序的工具。它与工具捆绑,所以无需额外的安装。工具负责访问这些文件,不需要有你进行任何管理。AIR SDK有下面这些组件构成。

clip_image002

0AIR SDK组件图

n AIR Develop ToolADT

AIR使用Java编写的多用途工具。它需要Java 1.5或更高的版本才能运行,用于Android设备打包AIR应用程序。它根据指定的目标来创建不同的包:

l apk用于发布

l apk-emulator用于模拟器

l apk-debug用于在本地或者在设备上调试

ADT创建自由签名的数字代码证书,用于签署应用程序,通过一个选项来延长有效期,以遵循Android规范。它能在Android设备上安装、卸载和启动应用程序。ADT工具的名称是adtadt.bat,位于bin件夹。adt.jar是由adtadt.bat调用的可执行文件位于lib文件夹。

n AIR Debug LauncherADL

ADL用于在开发期间测试AIR应用程序,而无需对他进行打包。它使用SDK包含的运行时,并能打印跟踪语句和运行时错误。还可用于启动Flash DebuggerFDB)会话。ADL工具名为adladl.exe,位于bin文件夹中。

n AIR runtimeAIR运行时)

在将应用程序安装到设备之前,AIR运行时用于在开发和调试过程中启动和测试应用程序。AIR运行时的名称是runtime.apk,位于runtimes文件夹。

n Frameworks

Frameworks目录包含所有AIR核心库。

2. 依赖环境

2.1. JDK安装

需要Java 1.5或更高的版本才能运行。如果你还没有JDK的话,可以去这里下载,接下来的工作就是安装提示一步一步走。设置环境变量步骤如下:

n 我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量;

n JAVA_HOME值为: D:\Program Files\Java\ jdk1.7.0_10你安装JDK的目录

n CLASSPATH值为:.;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\bin;

n Path 在开始追加 %JAVA_HOME%\bin;

安装完成之后,可以在检查JDK是否安装成功。打开cmd窗口,输入java –version 查看JDK的版本信息。出现类似下面的画面表示安装成功了:

clip_image003

1:验证JDK安装是否成功

2.2. AIR SDK

一般Flex SDK中已经包含了AIR SDK,可以去Adobe或者Apache Flex网站下载。解压到你喜欢的路径即可,然后在相应的开发工具Flash BuilderFlash Develop中设置SDK即可。也可以单独下载AIR SDK,然后解压到Flex SDK目录里面。

如果你使用Flash Builder开发,SDK都已经随着Flash Builder按照好了,直接使用即可;如果你使用Flash Develop开发,可以参考走在网页游戏开发的路上(一)介绍的方法设置。

3. 开发工具及步骤

下面介绍使用Flash BuilderFlash Develop2个开发工具Android应用,个人主要使用Flash Develop开发(写代码利器),高级调试时使用Flash Builder

3.1. Flash Builder

“文件”—>“新建”—>“ActionScript手机项目“Flex手机项目。如果想使用Flex框架,就选择Flex手机项目;如果想使用纯ActionScript,就选择ActionScript手机项目。我们选择ActionScript手机项目。

创建应用程序描述

手机设置“中:

n 目标平台(Target Platforms),选择Google Android

n 权限(Permissions),选择Internet

n 单击“下一步,然后设置应用程序主文件(即文档类)、应用程序ID、输出文件夹等等;

n 单击完成

clip_image005

2:应用程序描述-手机设置

clip_image007

3:构建路径设置

根据上面设置的应用程序描述,会自动生成一个XML文件,它在打包时与.swf文件捆绑,这个文件可以手动修改。应用程序描述包含屏幕方向,权限设置等等,我们例子中生成的描述文件为——HelloWorld-app.xml,你可以打开查看下里面有哪些设置。

在桌面上测试程序

将应用程序安装到设备之前,应该先在桌面上运行一下,以防其中包含语法错误等。

将应用程序打包成apk文件并安装到设备

为了在Flash Builder中将应用程序打包成APK文件并安装到Android设置上,请按以下步骤操作。

n 右键项目文件夹,然后从弹出的快捷键菜单中选择属性

n 选择“ActionScript构建打包”-->“Google Android”—>“数字签名”-->“证书。如果已经有AIR代码签名证书,浏览选择即可;否则创建一个临时证书,填写相应选项即可。

clip_image009

4:选择数字签名-证书

clip_image010

5:创建数字证书

n 返回“运行配置”。在启动方法下选择在设备上,单击运行。这个时候会创建一个APK文件,可以在项目中看到它。APK文件会安装到设备上,随后设备启动应用程序。

测试和调试

Adobe远程调试会话支持USB推荐)或Wi-Fi,这正是之前设置Internet权限的原因。使用Wi-Fi,要打开一定设置的Wi-Fi,并且在Windows中,要设置防火墙来打开7935端口。

clip_image012

6:调试选项

为了在Flash Builder进行测试盒调试,可以点击屏幕顶部的Debug按钮。点击按钮式,在控制台窗口会出现trace语句。除了输出窗口中显示的跟踪,还可以在调试过程中使用断点控制、单步调试和变量监视等功能。(其实跟普通的as项目调试一样简单)

3.2. Flash Develop

“项目”—>“新建项目”-->“AIR手机AS3项目(AIR Mobile AS3 App或者“AIR 手机Flex项目(AIR Mobile Flex App。我使用的是FD4.2.4,创建项目之后,FD会自动为我们生成很多设置文件。

clip_image013

7Flash Develop Android项目结构

应用程序描述文件

application.xml是自动生成的应用程序描述文件,可以手动修改xml文件;也可以通过“项目”-->”AIR项目属性进行设置。

clip_image015

7:修改Initial Window描述部分

clip_image017

8:修改Manifiest部分

测试、调试、打包、安装

n 配置

l - edit 'bat\SetupSDK.bat' for paths to Flex SDK and Android SDK (default should be ok)

l install your device's USB drivers

l enable "USB debugging" on your Android device: Parameters > Applications > Development > USB Debugging

n 运行'bat\CreateCertificate.bat'创建签名认证;

n F8构建项目;

n Run/debug the application on the desktop as usual (F5 or Ctrl+Enter)

n 如果手机上没有安装AIR环境,可以运行'bat\InstallAirRuntime.bat'安装;

n 在手机上调试运行

l edit 'Run.bat' and change the run target 'goto desktop' by 'goto android-debug'

l build & run as usual (Ctrl+Enter or F5) to package, install & run the application on your device

n 正式发布项目

l Release-build from FlashDevelop (F8)

l run 'PackageApp.bat' and select Android/normal target

4. Hello World

按照【开发工具及步骤】中创建项目,在主文件如下,启动app显示一行文本“Hello World

Main.as

public class Main extends Sprite

{

public function Main():void

{

stage.scaleMode = StageScaleMode.NO_SCALE;

stage.align = StageAlign.TOP_LEFT;

stage.addEventListener(Event.DEACTIVATE, deactivate);

// touch or gesture?

Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;

// entry point

//设置字体样式

var font:TextFormat = new TextFormat();

font.size = 28;

font.color = 0xFF8000;

//

var hello:TextField = new TextField();

hello.defaultTextFormat = font;

hello.text = "Hello World!";

hello.autoSize = TextFieldAutoSize.CENTER;

addChild(hello);

}

private function deactivate(e:Event):void

{

// auto-close

NativeApplication.nativeApplication.exit();

}

}

打包安装到手机上面效果如下图:

clip_image019

9Hello World效果图(比较丑-_-sorry!)

注意:如果使用的调试版本,可能会有下面这个提示,输入电脑的ip会连接上调试,不输入直接取消不影响功能。

clip_image021

10:调试连接提醒

5. 总结

开发工具中介绍了如何使用Flash Builder创建和调试Android应用程序,其实这些工具为了做了以下几件事(我们手动也可以做到)。

1) 创建应用程序描述文件,并且和应用程序捆绑一起打包。下面一个应用程序描述文件例子,字段名字都很好理解:

application.xml

<?xml version="1.0" encoding="utf-8" ?>

<application xmlns="http://ns.adobe.com/air/application/3.5">

<id>air.HelloWorld</id>

<versionNumber>0.1</versionNumber>

<supportedProfiles>mobileDevice</supportedProfiles>

<filename>HelloWorld</filename>

<name>Hello World</name>

<description></description>

<copyright></copyright>

<android>

<manifestAdditions><![CDATA[

<manifest android:installLocation="auto">

<uses-sdk android:minSdkVersion="8"/>

<uses-permission android:name="android.permission.INTERNET"/>

<uses-feature android:required="true" android:name="android.hardware.touchscreen.multitouch"/>

</manifest>

]]></manifestAdditions>

</android>

<initialWindow>

<title>Hello World</title>

<content>HelloWorld.swf</content>

<visible>true</visible>

<fullScreen>true</fullScreen>

<!--<autoOrients>false</autoOrients>-->

<!--<aspectRatio>landscape</aspectRatio>-->

<renderMode>direct</renderMode>

</initialWindow>

<icon>

<image48x48>icons/icon_48.png</image48x48>

<image57x57>icons/icon_57.png</image57x57>

<image72x72>icons/icon_72.png</image72x72>

<image114x114>icons/icon_114.png</image114x114>

<image512x512>icons/icon_512.png</image512x512>

</icon>

</application>

2) 创建代码签名证书。我们可以手动使用以下命令创建

创建代码签名证书

adt -certificate -validityPeriod 25 -cn [应用名称] 1024-RSA [代码签名文件] [签名密码]

3) AIR应用程序打包成APK文件。

打包成APK文件

adt -package –target apk -storetype pkcs12 -keystore [代码签名文件] -storepass [签名密码] [打包文件名xxx.apk] [应用程序描述文件application.xml] [swf]

4) APK文件安装到Android设备

安装APK文件

Android-SDK-path/tools/adb install xxx.apk

说明: 如果应用程序以安装到设备,就是用-r命令重新安装

Android-SDK-path/tools/adb install –r xxx.apk

相关文章
|
10天前
|
Android开发 Swift iOS开发
深入探索iOS与Android操作系统的架构差异及其对应用开发的影响
在当今数字化时代,移动设备已经成为我们日常生活和工作不可或缺的一部分。其中,iOS和Android作为全球最流行的两大移动操作系统,各自拥有独特的系统架构和设计理念。本文将深入探讨iOS与Android的系统架构差异,并分析这些差异如何影响应用开发者的开发策略和用户体验设计。通过对两者的比较,我们可以更好地理解它们各自的优势和局限性,从而为开发者提供有价值的见解,帮助他们在这两个平台上开发出更高效、更符合用户需求的应用。
|
1月前
|
Android开发 Swift iOS开发
iOS和安卓作为主流操作系统,开发者需了解两者差异以提高效率并确保优质用户体验。
【10月更文挑战第1天】随着移动互联网的发展,智能手机成为生活必需品,iOS和安卓作为主流操作系统,各有庞大的用户群。开发者需了解两者差异以提高效率并确保优质用户体验。iOS使用Swift或Objective-C开发,强调简洁直观的设计;安卓则采用Java或Kotlin,注重层次与动画。Swift和Kotlin均有现代编程特性。此外,iOS设备更易优化,而安卓需考虑更多兼容性问题。iOS应用仅能通过App Store发布,审核严格;安卓除Google Play外还可通过第三方市场发布,审核较宽松。开发者应根据需求选择合适平台,提供最佳应用体验。
62 3
|
1月前
|
Android开发 开发者
安卓应用开发中的自定义视图
【9月更文挑战第37天】在安卓开发的海洋中,自定义视图犹如一座座小岛,等待着勇敢的探索者去发现其独特之处。本文将带领你踏上这段旅程,从浅滩走向深海,逐步揭开自定义视图的神秘面纱。
41 3
|
1月前
|
存储 Android开发 开发者
深入理解安卓应用开发的核心组件
【10月更文挑战第8天】探索Android应用开发的精髓,本文带你了解安卓核心组件的奥秘,包括Activity、Service、BroadcastReceiver和ContentProvider。我们将通过代码示例,揭示这些组件如何协同工作,构建出功能强大且响应迅速的应用程序。无论你是初学者还是资深开发者,这篇文章都将为你提供新的视角和深度知识。
|
1月前
|
数据可视化 Android开发 开发者
安卓应用开发中的自定义View组件
【10月更文挑战第5天】在安卓应用开发中,自定义View组件是提升用户交互体验的利器。本篇将深入探讨如何从零开始创建自定义View,包括设计理念、实现步骤以及性能优化技巧,帮助开发者打造流畅且富有创意的用户界面。
86 0
|
19天前
|
搜索推荐 前端开发 Android开发
安卓应用开发中的自定义视图实现
【10月更文挑战第30天】在安卓开发的海洋中,自定义视图是那抹不可或缺的亮色,它为应用界面的个性化和交互体验的提升提供了无限可能。本文将深入探讨如何在安卓平台创建自定义视图,并展示如何通过代码实现这一过程。我们将从基础出发,逐步引导你理解自定义视图的核心概念,然后通过一个实际的代码示例,详细讲解如何将理论应用于实践,最终实现一个美观且具有良好用户体验的自定义控件。无论你是想提高自己的开发技能,还是仅仅出于对安卓开发的兴趣,这篇文章都将为你提供价值。
|
19天前
|
Android开发 Swift iOS开发
探索iOS与安卓应用开发的差异性
探索iOS与安卓应用开发的差异性
40 2
|
26天前
|
传感器 XML IDE
探索安卓应用开发:从基础到进阶
【10月更文挑战第23天】在数字化时代的浪潮中,移动应用已成为人们日常生活的延伸。本文以安卓平台为例,深入浅出地介绍了如何从零开始构建一个安卓应用,涵盖了开发环境搭建、基本组件使用、界面设计原则以及进阶技巧等关键步骤。通过实例演示和代码片段,引导读者逐步掌握安卓应用开发的核心技能,旨在激发更多开发者对安卓平台的探索热情,并为初学者提供一条清晰的学习路径。
|
14天前
|
前端开发 Android开发 UED
安卓应用开发中的自定义控件实践
【10月更文挑战第35天】在移动应用开发中,自定义控件是提升用户体验、增强界面表现力的重要手段。本文将通过一个安卓自定义控件的创建过程,展示如何从零开始构建一个具有交互功能的自定义视图。我们将探索关键概念和步骤,包括继承View类、处理测量与布局、绘制以及事件处理。最终,我们将实现一个简单的圆形进度条,并分析其性能优化。
|
1月前
|
Java Android开发 Swift
掌握安卓与iOS应用开发:技术比较与选择指南
在移动应用开发领域,谷歌的安卓和苹果的iOS系统无疑是两大巨头。它们不仅塑造了智能手机市场,还影响了开发者的日常决策。本文深入探讨了安卓与iOS平台的技术差异、开发环境及工具、以及市场表现和用户基础。通过对比分析,旨在为开发者提供实用的指导,帮助他们根据项目需求、预算限制和性能要求,做出最合适的平台选择。无论是追求高度定制的用户体验,还是期望快速进入市场,本文都将为您的开发旅程提供有价值的见解。
下一篇
无影云桌面