Android,安卓特系统,是基于 Linux 核心的软件平台及作业系统。Google Inc. 在 2007 年 11 月 5 日正式公布,同时,为了大力推展该技术,Google 和其他几十个手机公司建立了开放手机联盟(Open Handset Alliance),并交由该联盟进行后续开发与规格之制定。

Google Android 开发环境安装

Android 既然是由 Google 所出,势必为了追求最大的整合性,特别采用 Java 做为开发工具,想必会比 Apple家 IPhone 的作业系统来得更容易入手 ( 起码在硬件方面)。

同时,JAVA 本身具有跨平台的优势,Android 自然可在 Windows、MAC 与 Linux 等平台上进行开发,更多了一份方便性。本篇文章中,系以 Windows 作业系统做为开发平台,至于其他作业系统的安装,另请参考 Google 的说明即可。

想当然尔,倘若要写 Android 的程序,最重要的当然是取得相关软件。我们可以先在 Google Android 首页中,寻找并依照 Quick Start 的操作说明进行。当中,除了 Android 本身所需的 SDK 程序 ( 包含 Android 模拟器 ( Emulator ) ) 以外,还需要安装 JAVA 的 JDK 程序 以及 Eclipse 的 IDE 整合式开发环境程序 两大基本程序,以及在 Eclipse 当中新增一个 Android Development Tools (ADT) 开发工具扩充套件的 Plugin ( 包含 tools integration、custom XML editors 及 debug ouput pane 等功能 )。

在此需特别注意的是,除了安装 ADT 以外,更需依照原文页面中所述之 Configuring the ADT Plugin 章节之说明,对 ADT 进行调教。

在取得上述各程序之后,依照 JAVA、Eclipse、ADT 与 Android SDK 的顺序进行安装。其中,Eclipse 是免安装即可使用的程序,惟在首次执行时,需设定可供 Eclipse 使用之工作区资料夹。

当完成上述 Android 的程序文件配置,接著要开启 Eclipse,并于命命列的 Help 选项中,执行 Install New Software 选项,俟将 http://dl-ssl.google.com/android/eclipse 输入对应之栏位后,执行软件升级,选取并安装 Android Development Tools (ADT) Plugin。

如果安装 Android SDK 的过程中,在 Refresh Sources 视窗中产生如 Failed to fetch URL https://dl-ssl.google.com/android/repository/repository.xml, reason: HTTPS SSL error. You might want to force download through HTTP in the settings.” 之错误讯息,可先关闭该视窗以及随后跳出之 Choose Packages to Install 视窗,并将 Android SDK and AVD Manager 视窗 ( 如下图所示 ) 的左侧栏位中,已选取之 Installed Packages 选项,改选为 Settings,接著,再勾选 “Force https://… sources to be fetched using http://…” 即可。嗣,记得要再回到 Installed Packages 的选项,并重新执行 Update All 功能。

依上述步骤进行后,如果还是无法自动下载相关程序时,则需透过离线安装之方法取得各相关程序,并手动将各程序文件存放在适当之资料夹中,例如:C:Android;惟其相关程序文件位置会因版本更动而变化,因此暂不予在本文中提供,如有需要者可在网络上进行搜寻,或造访 ANGGRIAWAN SUGIANTO 之网站说明,简单的说,就是要将各个相关程序摆放在主要 Android SDK 资料夹下,并依正确的位置摆放。

在 Android SDK 与 ADT plugin 安装完成后,需针对 ADT 进行设定。在设定 ADT 时,预先启动 Eclipse,并在 Eclipse 视窗上方的命令列之 Windows 选项中,执行 Preferences 选项,并在接著出现的视窗之左列栏位中,选取 Android 选项,嗣,借由执行在右侧页面所显示之 SDK Location 选项之 Browse 按钮,选取并设定用来存放 SDK 软件之资料夹位置,例如:C:Android。如此,在完成前述各执行步骤后,即可完成 Android 的安装与基础设定。

新手初体验

在完成安装篇里头的各项步骤后,我们现在应该已经可以开始用 Eclipse 进行 Android 的相关程序开发。让我们在开启 Eclipse 后,依照下列步骤建立一个新项目:

  1. 执行 File > New > Project >;
  2. 在出现的 New Project 视窗中,选取 Android > Android Project;
  3. 产生一个 New Android Project 视窗;
  4. 因为是测试,所以我们选择 Create project from existing source,并点选下方的 Location 的 Browse 按钮;
  5. 在 Android 资料夹下,选取 Sample 资料夹,找出 ApiDemos 并且按下确定;
  6. 在回到 New Android Project 视窗后,选取适当的 Build Target,例如本篇测试中是使用 Android 2.2;
  7. 按下 Finish。

因为版本的关系,有可能会在此时产生一些错误讯息,所以我们需要进行修复项目的动作,而修复的动作大致包括:

  • 在 Eclipse 视窗中,找出位于视窗左侧的 Navigator(或 Package Exploer),并在刚刚我们新增的项目名称(ApiDemos)出现黄色惊叹号时,可在该项目名称上按下鼠标右键,并在跳出的选单中,选取 Android Tools > Fix Project Properties,以执行修复动作。
  • 如果错误讯息为:The type R is already defined,表示 R.java 产生重复定义的错误,通常这是由于新旧版的 SDK 下的 R.java 产生冲突。此时,仅需将 src 资料夹下的 R.java 删除,并保留 gen 资料夹底下的 R.java 即可。
  • 如果发现项目名称及或 Problem 视窗中有红色叉号,例如在本例中出现有 Project ‘ApiDemos’ is missing required source folder: ‘gen’ 及 The project cannot be built until build path errors are resolved 两个,表示项目本身无法进行完整的编译,其中,前者的错误状态,主要代表 gen 资料夹有问题,此时可以透过打开任何一个 .XML 文件,并随意修改后存档,即可修正该问题,并同时解决后者的错误状态。

虽然在本例中解决了错误讯息(红色叉号),但是仍有 332 个黄色惊叹号的警告(Warnings)出现,而透过选取 Fix Project Properties 也无法有效解除各警告,惟,该等警告并非本节所欲谈论的内容,因此就暂时先不去管他。

Android 虚拟机器

当我们暂时没有适当的 Android 设备时,可透过 Android 提供的虚拟机器,让我们直接进行配置以及模拟各类硬件规格之设备,换言之,所谓虚拟机器,也就是一种开发环境模拟器。

如果想在虚拟机器中执行项目时,需先设定项目的环境参数,其步骤包含下列各项:

  1. 在 Eclipse 视窗中,执行 Run > Debug Configurations;
  2. 在新开的 Debug Configurations 的视窗中,于左侧栏位的 Android Application 上,按下鼠标右键;
  3. 之后,会出现一小选单,选取 New,借以产生一组新的项目;
  4. 同时,在右边框格中,出现一个新的界面,我们可以在 Name 栏位中,填入代表此环境参数的名称,例如:此项目名称 ApiDemos;
  5. 在 Project 表单右侧,按下 Browse,以选择对应之项目名称;
  6. 确认 Launch Action 表单中,Launch Default Activity 已被选取;
  7. 按下视窗右下方之 Debug 按钮。

然而,虽然到目前为止,已经完成虚拟机器的基础环境配置,但是如果照著之前的步骤进行的话,那应该会发现到无法执行程序的窘境,换句话说,Eclipse 并无法开启虚拟机器,好让程序借以执行。

同时,由于先前进行 Debug 步骤时,系我们建立 Android 环境后第一次使用,因此会产生一「Android AVD Error」之错误讯息。因此,我们尚须依下列「设定虚拟机器」之步骤进行处理,:

  1. 在显示有错误讯息之视窗上,按下确定,以进行下一步;
  2. 产生一 Android SDK and AVD Manager 视窗;
  3. 选取视窗左侧框架中,有关 Virtual Devices 之选项;
  4. 执行视窗右侧框架中,一个 New 按钮;
  5. 产生一个 Create new Android Virtual Device (AVD) 视窗;
  6. 在步骤六产生之视窗中,填写适合的 Name 栏位,例如:EclipseDevice;
  7. 选取适当的 Target,例如:Android 2.2 - API Level 8;
  8. 甚至可以选择想要的配套硬件(Hardware),例如:Abstracted LCD Density 与 Battery Support 等,甚至是记忆卡大小及屏幕尺寸等设定;
  9. 按下 Create AVD,即可建立一个新的虚拟机器。

如此,在完成上述步骤后,即可再依之前进行 Debug 之步骤进行处理,或者系透过按压 Eclipse 工具列上之相关按键(例如:手机符号或是 Run*)达成相同应用。此时,将产生一个如图一所示之虚拟机器视窗,以供吾等操控使用。

图一、Google Android 虚拟机器。图一、Google Android 虚拟机器。

备注:Debug 与 Run 唯一的差别在于 Debug 可记录程序执行时之状态。Tips:在虚拟机器执行时,若按下 ALT + Enter 按键,将会全屏幕显示;按下 F6 则是使用轨迹球模式;按下 Del 则是暂切轨迹球模式;而若按压 CTRL + FN + F12 键,则可切换虚拟机器之屏幕方向 。

Hello Vedfolnir

大家第一眼看到这节的标题,应该是满脸困惑。Hello Vedfolnir? 这关 Android 什么事情呢?其实大家如果想成 Hello World,应该就可以豁然开朗了。是的,其实 Hello Vedfolnir 只是 Hello World 的个人自大版本(笑)。

言归正传,不管是 Hello World 还是 Hello Vedfolnir,本节主要目的是让我们学习到该如何创建第一个 Android 程序,以正式进入 Android 的世界。其详细开发步骤,请参考下列所示:

  1. 开启 Eclipse,并选取 File > New > Project,借以产生一个 New Project 视窗;
  2. 在该视窗中,寻找并选取 Android > Android Project,按下一步;
  3. 产生如图二所示之 New Android Project 视窗,并请依各栏位之内容(例如:Project Name、Build Target 及 Properties),填入对应之信息*;
  4. 在完成步骤三后,按下 Finish 按键,借以完成项目的建立。

图二、New Android Project 视窗。图二、New Android Project 视窗。

如此,在完成前述步骤后,可以在 Eclipse 工作视窗中,发现我们已经建立好一个新的项目。按下执行键(Run),屏幕上会先出现一个视窗,询问要使用何者模式进行编译执行,此时在选择 Android Application 后,即会产生出现有 Hello Vedfolnir 内容之虚拟机器,同时,在虚拟机器之程序资料夹中,会出现如图三所示之程序图示(Icon)。

图三、虚拟机器之工作视窗。图三、虚拟机器之工作视窗。

备注:在 New Android Project 视窗中,有一 Properties 框架,其中 Package name 系套件名称,包含有两段式构成之命名规则,借以透过不同的套件名称与路径,区分出不同的类别(Class);而 Create Activity Name 包含有开头大写形式的命名规则,主要用于建立此项目之主要类别(亦为「Activity」类别之子类别)。

程序项目架构

在这一节中,将为大家介绍 Android 的主要文件架构,包含有:

  • AndroidManifest.xml:程序的功能清单,用于列出该程序所提供的功能。
  • Src:原始码(source)目录,存有本项目的主程序(*.java)。
  • Gen:自动生成(Generate)目录,存有 R.java 文件,亦即 R 类别,是做为类似资源字典大全的角色使用。
  • Res:资源(Resource)目录,存放所有程序中使用到的资源文件,具有三个默认资料夹:存有 XML 格式的界面描述档的版面配置目录(Layout)、参数值目录(Values)及图片目录(Drawable)。

R 类别

R 类别(R Class)在 Android 中的功用,类似工具书的存在,为一个中介文件,包含用户界面、图像、字串等各式的资源与相应的编号(ID)。而 R.java 会由 ADT 工具,自动根据被放入 Res 目录的 XML 描述文件、图像等资源,进行同步更新,并得以用来调用XML。

一个新程序的开始

(待续)

推荐附录

  1. Android 官方网址
  2. 维基百科
✦ 独立报道 · 读者支持 ✦

以实际行动支持独立观点,与我们一同走得更远

每一篇条理清晰的分析、每一次不随波逐流的观察,背后都是对真实与品质的坚持。我们拒绝内容农场与算法流量绑架,坚持自由独立的客观发声。

维持高品质的原创写作与独立运营,需要持续的实质力量。您可以选择一次性赞助或每月定期支持,通过 Google 安全结账,与我们一同守护这份深刻与清醒。

由 Google 安全处理付款 · 可随时在 Google 账户管理或取消