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

简介:

基于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

 

 

待续:基于AIR Android应用开发2ANDROID运行AIR程序原理


相关文章
|
23天前
|
存储 XML 开发工具
探索安卓应用开发:从基础到进阶
在这篇文章中,我们将一起踏上安卓应用开发的旅程。不论你是编程新手还是希望提升技能的开发者,这里都有你需要的东西。我们会从最基础的概念开始,逐步深入到更复杂的主题。文章将涵盖开发环境设置、用户界面设计、数据处理以及性能优化等方面。通过理论与实践的结合,你将能够构建出既美观又高效的安卓应用。让我们一起开启这段技术之旅吧!
|
1月前
|
Android开发 Swift iOS开发
深入探索iOS与Android操作系统的架构差异及其对应用开发的影响
在当今数字化时代,移动设备已经成为我们日常生活和工作不可或缺的一部分。其中,iOS和Android作为全球最流行的两大移动操作系统,各自拥有独特的系统架构和设计理念。本文将深入探讨iOS与Android的系统架构差异,并分析这些差异如何影响应用开发者的开发策略和用户体验设计。通过对两者的比较,我们可以更好地理解它们各自的优势和局限性,从而为开发者提供有价值的见解,帮助他们在这两个平台上开发出更高效、更符合用户需求的应用。
|
2月前
|
Android开发 Swift iOS开发
iOS和安卓作为主流操作系统,开发者需了解两者差异以提高效率并确保优质用户体验。
【10月更文挑战第1天】随着移动互联网的发展,智能手机成为生活必需品,iOS和安卓作为主流操作系统,各有庞大的用户群。开发者需了解两者差异以提高效率并确保优质用户体验。iOS使用Swift或Objective-C开发,强调简洁直观的设计;安卓则采用Java或Kotlin,注重层次与动画。Swift和Kotlin均有现代编程特性。此外,iOS设备更易优化,而安卓需考虑更多兼容性问题。iOS应用仅能通过App Store发布,审核严格;安卓除Google Play外还可通过第三方市场发布,审核较宽松。开发者应根据需求选择合适平台,提供最佳应用体验。
72 3
|
2月前
|
存储 Android开发 开发者
深入理解安卓应用开发的核心组件
【10月更文挑战第8天】探索Android应用开发的精髓,本文带你了解安卓核心组件的奥秘,包括Activity、Service、BroadcastReceiver和ContentProvider。我们将通过代码示例,揭示这些组件如何协同工作,构建出功能强大且响应迅速的应用程序。无论你是初学者还是资深开发者,这篇文章都将为你提供新的视角和深度知识。
|
2月前
|
数据可视化 Android开发 开发者
安卓应用开发中的自定义View组件
【10月更文挑战第5天】在安卓应用开发中,自定义View组件是提升用户交互体验的利器。本篇将深入探讨如何从零开始创建自定义View,包括设计理念、实现步骤以及性能优化技巧,帮助开发者打造流畅且富有创意的用户界面。
94 0
|
13天前
|
搜索推荐 Android开发 开发者
安卓应用开发中的自定义控件实践
在安卓应用开发的广阔天地中,自定义控件如同璀璨的星辰,点亮了用户界面设计的夜空。它们不仅丰富了交互体验,更赋予了应用独特的个性。本文将带你领略自定义控件的魅力,从基础概念到实际应用,一步步揭示其背后的原理与技术细节。我们将通过一个简单的例子——打造一个具有独特动画效果的按钮,来展现自定义控件的强大功能和灵活性。无论你是初学者还是资深开发者,这篇文章都将为你打开一扇通往更高阶UI设计的大门。
|
27天前
|
缓存 监控 前端开发
探索Android应用开发之旅:从新手到专家
【10月更文挑战第42天】本文将带你踏上Android应用开发的旅程,无论你是初学者还是有经验的开发者。我们将一起探索如何从零开始创建你的第一个Android应用,并逐步深入到更高级的主题,如自定义视图、网络编程和性能优化。通过实际示例和清晰的解释,你将学会如何构建高效、吸引人的Android应用。让我们一起开启这段激动人心的旅程吧!
|
27天前
|
开发框架 前端开发 Android开发
探索安卓和iOS应用开发中的跨平台解决方案
【10月更文挑战第42天】在移动应用开发的广阔天地中,安卓和iOS系统如同两座巍峨的山峰,分别占据着半壁江山。开发者们在这两座山峰之间穿梭,努力寻找一种既能节省资源又能提高效率的跨平台开发方案。本文将带你走进跨平台开发的世界,探讨各种解决方案的优势与局限,并分享一些实用的代码示例,助你在应用开发的道路上更加游刃有余。
|
1月前
|
搜索推荐 前端开发 Android开发
安卓应用开发中的自定义视图实现
【10月更文挑战第30天】在安卓开发的海洋中,自定义视图是那抹不可或缺的亮色,它为应用界面的个性化和交互体验的提升提供了无限可能。本文将深入探讨如何在安卓平台创建自定义视图,并展示如何通过代码实现这一过程。我们将从基础出发,逐步引导你理解自定义视图的核心概念,然后通过一个实际的代码示例,详细讲解如何将理论应用于实践,最终实现一个美观且具有良好用户体验的自定义控件。无论你是想提高自己的开发技能,还是仅仅出于对安卓开发的兴趣,这篇文章都将为你提供价值。
|
1月前
|
Android开发 Swift iOS开发
探索iOS与安卓应用开发的差异性
探索iOS与安卓应用开发的差异性
49 2