《Android程序设计》一1.1 Android SDK的安装和系统需求

本文涉及的产品
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
简介: 本节书摘来自华章出版社《Android程序设计》一 书中的第1章,第1.1节,作者:G. Blake Meike, Masumi Nakamura,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.1 Android SDK的安装和系统需求

要安装Android SDK,需要两个系统软件,它们不是Android SDK的一部分:即Java开发工具包(JDK)和Eclipse集成开发环境(IDE)。这两个系统没有作为Android SDK的一部分进行提供是考虑到你可能已在非Android软件的开发中使用它们,或者你的系统中可能已经安装了这两个系统软件,而在一个系统上安装这两个软件的不同版本可能会导致版本冲突。
Android SDK和最近发布的几个版本的JDK和Eclipse IDE都是兼容的。但最好安装这些工具的最新版本。其具体的要求在Android开发者网站的系统需求页面有介绍。
在Android软件开发中,除了Eclipse之外,还可以使用几款其他IDE。在Android文档中给出了可以使用的其他IDE的信息。之所以在本书中选择Eclipse作为IDE,是因为Eclipse对Android SDK工具和其他插件的支持是最好的,而且Eclipse也是用得最广泛的Java IDE,当然有很多Java程序员更喜欢IntelliJ IDEA。

1.1.1 Java开发工具包(JDK)

如果你的系统已经安装了最新的JDK,就不需要再安装它。JDK提供了一些工具,如Java编译器,IDE和SDK使用这些工具来开发Java程序。JDK还包含Java运行环境(JRE),JRE使得如Eclipse这样的Java程序能够在系统上运行。
如果你使用的Macintosh运行的是Android SDK所支持的某个版本的Mac OS X,则在该系统上已经安装了JDK。
如果你使用的是Ubuntu Linux系统,则可以使用它的软件包管理器来安装JDK,安装命令如下:
sudo apt-get install sun-java6-jdk
警告: 如果使用这条命令找不到JDK包,则以使用新立得包管理器(Synaptic Package Manager)来完成JDK的安装。新立得软件包管理器位于菜单栏的“系统”→“管理”(System→Administration)中。选择Settings→ Repositories,在Other Software 选项卡中会显示partner库。
这是本章中少数几个涉及版本号的地方,在这里说明是因为其无法避免。软件包的名称中都会包含JDK的版本号。然而,与本章中所提到的所有其他软件一样,安装时建议参考最新的在线文档来确定自己需要的版本号。
如果你是Windows用户,或者由于某些其他原因,需要从Oracle的网站下载安装JDK,则可以在这里找到它。
下载页将自动检测你的系统,并提供最新版本的下载。下载的安装文件是一个可执行文件。双击运行它即可进行安装。
要确认JDK是否安装正确,可以在命令行输入下面这条命令(在Linux和Max系统的终端;在Windows系统的命令提示符):
javac -version
警告: 如果在系统的PATH中没有包含javac,则需要手工将JDK的bin路径配置到PATH变量中。
这条命令应该会显示出刚刚安装的JDK的版本号。如果安装了Java 6,JDK的版本号为20,则输出结果应该是:
javac 1.6.0_20
输出的具体内容取决于JDK的版本号,其可能和你在这里看到的有所不同。
注意: 在Debian Linux系统(如Ubuntu)上,如果不知道正在运行的是哪个版本的JRE,或者JRE的版本不对,则可以使用如下命令来显示可用的JRE版本,并选择正确的版本:

sudo update-alternatives --config java

1.1.2 Eclipse集成开发环境(IDE)

Eclipse是一个通用的技术平台。它用于创建多种语言的IDE及很多针对特定的SDK定制的IDE。在作为软件开发工具之外,Eclipse还有一些其他用途,如为以Lotus Notes为代表的一些其他应用提供富客户端平台(Rich Client Platform,RCP)。
通常情况下,Eclipse是作为IDE用于编写、测试和调试软件,尤其是Java开发。此外,在很多Java软件开发中还有一些以Eclipse为基础衍生出来的IDE和SDK。具体到本书所要介绍的Android开发,我们可以选用得到广泛应用的Eclipse包和插件来进行开发。下面先来看看如何下载和安装Eclipse包。

在这个页面中列出了最常用的Eclipse包。Eclipse包是多个Eclipse模块的组合,这使得Eclipse更适合于某类软件的开发。通常情况下,Eclipse用户需要先从该页面下载某个版本的Eclipse包,然后再安装一些插件进行定制。当你为安装的Eclipse添加Android开发工具(ADT)时,所遵循的正是这个步骤。Android开发者网站的系统需求页面列出了Android开发所需要的基础软件Eclipse的3种选择:
Eclipse经典版(Eclipse 3.5或更高版本)
面向Java开发者的Eclipse IDE
面向富客户端平台和插件开发者的Eclipse
上述这些版本都可以正常工作,只要不是开发Eclipse插件,选择Eclipse经典版或Java开发版(EE或标准的)都是可以的。笔者使用的一直是Java EE开发版(“EE”表示企业版,即Enterprise Edition),本书截图中的Eclipse就是这个版本。
Eclipse下载网站可以判断出你所用的操作系统的类型并自动为你选出该系统下可用的下载,不过你可能需要指定自己的系统是32位还是64位的。从下载网站下载的文件是一个压缩包(archive)。在安装Eclipse时,首先需要解压这个压缩包,然后把其中的Eclipse文件夹复制到home目录下。在我们的系统上可直接运行的Eclipse可执行程序就在这个目录下面。
警告: 把Eclipse安装在home目录下(或者另一个目录)是非常重要的做法,尤其是在所用的系统上有多个用户账户的情况下。不要使用系统的软件包管理器。Eclipse安装只是众多Eclipse插件组合中的一组。此外,你很有可能需要进一步对Eclipse进行定制。Eclipse插件和更新的管理独立于系统中的其他软件。

由于这些原因,以系统的所有用户都能够使用的命令行方式来安装和使用Eclipse是很难成功的,即使可以通过系统的软件包管理器来完成。为了成功地对Eclipse进行安装,必须按照这里的介绍,在某个用户目录下安装它,并在这个位置启动它。

如果你的系统是Ubuntu或其他Linux发行版,则安装Eclipse时不要直接使用系统自带的库。如果你的Eclipse是按照这种方式安装的,则建议删除它并参照本节介绍的步骤重新安装。在Ubuntu中的Eclipse是Ubuntu所基于的Debian库中自带的。使用系统发行版的软件库中的Eclipse安装包来安装不是太常见,因为大多数时候,这些Eclipse的版本会比
较老。
为了确认Eclipse安装正确并且支持Eclipse运行的JRE包也存在,可在Eclipse目录下运行其可执行的二进制文件译注1。可以考虑为该可执行文件创建一个快捷方式,这样可以更快地启动Eclipse。此时应该可以看到如图1-1所示的欢迎界面。

1.1.3 Android SDK

完成JDK和Eclipse的安装之后,安装Android SDK的先期准备工作就完成了,下面可以安装Android SDK了。Android SDK是一个文件集,它包括库文件、可执行程序、脚本及文档等。安装SDK是指加载目标平台的SDK,并把SDK文件放到home目录下的一个文件夹中。

screenshot
要安装SDK,从下载与开发系统兼容的SDK包。下载到的是一个压缩包,把压缩包中的文件解压到home目录下。
警告: 如果你使用的是64位版本的Linux系统,则可能还需要安装ia32-libs软件包。

要确认是否需要安装这个软件包,可以运行adb命令(~/android-sdk-linux_*/platform-tools/adb)。如果系统提示无法找到adb命令(虽然在 platformtools目录下确实存在该命令),这表示当前版本的adb命令及一些其他工具,如果不安装ia32-libs软件包很可能就无法运行。安装ia32-libs软件包的命令是:
    sudo apt-get install ia32-libs

Android SDK包含一个或两个存放工具的目录:一个是tools,另一个是从版本8开始有的platform-tools。需要在环境变量PATH中添加这两个目录,PATH变量是目录列表,当从命令行中调用可执行命令时,系统会在PATH中设置的目录列表下搜索可执行文件。在Macintosh和Linux系统中, PATH环境变量分别是在home目录下的.profile (Ubuntu)或.bash_profile (Mac OS X)中设置的。在该文件中添加一行内容将SDK下的tools目录添加到PATH环境变量中(PATH目录列表中的不同目录使用冒号分隔)。可以在.profile或.bash_profile文件中添加如下一行内容(把例子中的~/android-sdk-ARCH目录改成你自己的Android SDK安装目录所在的全路径):
export PATH=$PATH:~/android-sdk-ARCH/tools:~/android-sdk-ARCH/platform-tools
在Windows系统中,单击“开始” → 右击“我的电脑”,选择“属性”。然后选择“高级系统设置”,单击“环境变量”按钮。双击系统PATH变量,在该变量的最后加上tools文件夹和platform-tools文件夹所在的路径(不要修改该变量中已有的路径!),两条路径之间用冒号分隔,不要带空格,如下所示:
;C:android-sdk-windowstools;C:android-sdk-windowsplatform-tools
完成Windows、Mac或Linux系统上的路径配置后,关闭并重新打开一个命令提示窗口或终端,使它能够加载新的PATH路径配置(在Ubuntu系统中,则可能需要先注销,再重新登录,除非你的终端程序配置是shell登录方式)。

1.1.4 在SDK中添加build target

在构建任何Android应用或者创建一个来尝试构建Android应用的项目之前,都必须首先安装一个或多个build target。为此,需要使用SDK和Android虚拟设备(AVD)管理器。该管理器有助于安装SDK中的软件包,通过这些软件包SDK可以支持多个版本的Android操作系统和不同级别的API。
在Eclipse中安装Android开发插件后(具体安装方法将在下一节描述),就可以在Eclipse开发环境中调用SDK和AVD管理器。该管理器也可以从命令行直接调用,调用方法就是直接执行下面这条命令:
android
图1-2所示就是SDK和AVD管理器的屏幕截图,在安装时选中所有可用的SDK版本。
SDK Platform软件包可以用来构建能够兼容不同级别的Android API的应用。至少应该安装最新(编号最大的)版本,但是当你可能某天想要在较老的版本上运行所构建的应用时,则应该将所有可用的级别的API和Google API扩展包都安装上。此外,也必须安装最新版本的示例应用包和Android SDK平台工具包(Platform-Tools package)。
1.1.5 在Eclipse中安装Android开发工具包(ADT)插件
既然安装完Android SDK、Eclipse及JDK后,就还有一个关键部件需要安装:Android开发工具包(ADT)插件。ADT插件为Eclipse添加Android开发所需的一些特定功能。

screenshot

ADT插件中的软件支持在Eclipse中编译Android应用,启动Android模拟器,在模拟器上连接到调试服务,编辑Android XML文件,编辑和编译Android接口定义语言(Android Interface Definition Language,AIDL)文件,创建Android应用安装包(.apk文件),以及执行其他特定于Android的任务。
可以使用安装新软件向导(Install New Software Wizard)来下载和安装ADT插件。选择Help →Install New Software启动该向导软件(如图1-3所示)。在Work With字段中输入以下URL,然后按Return或Enter键,安装过程就启动了。
注意: 更多关于使用安装新软件向导安装ADT插件的信息可以在Android开发者网站上找到。

关于该向导工具的Eclipse文档可以在Eclipse文档站点上找到。

screenshot

在Eclipse的站点列表中添加用于获取新插件的URL之后,在可用的软件列表中你将会看到开发者工具(Developer Tools)这一项。
单击Developer Tools旁边的复选框就可以选中它。单击Next按钮,会弹出一个窗口,询问是否接受该软件许可。选择接受许可,并单击Finish按钮,至此ADT工具包的安装就完成了。之后,还需要重新启动Eclipse以完成安装。
配置ADT插件
距离完成ADT的安装,还差最后一步。安装了ADT插件之后,还需要配置它。安装插件之后意味着,Eclipse的各个部件已经包含了Android软件开发所需的各种特定对话框、菜单命令和其他工具,包括用于配置ADT插件的对话框。通过Window→Preferences(Linux和Windows)或Eclipse→Preferences (Mac)菜单选项启动Preferences对话框。在Preferences对话框的左侧栏中单击Android项。

screenshot

注意: 第一次访问Preferences对话框,将会弹出一个对话框,询问是否愿意向Google发送使用情况统计数据。做出选择并单击Procecd按钮。
然后,会显示包含Android设置的对话框。在这个对话框接近顶部的位置有一个SDK location文本输入框。这是一个必填项,需要将SDK所在的路径填写进去,既可以直接输入,也可以使用文件浏览器来选择,如图1-5所示。单击Apply按钮。注意,已经安装过的build target,如1.2.4节所描述的,也会列在这里。
至此,Android SDK就算安装完成了。

screenshot

相关实践学习
阿里云百炼xAnalyticDB PostgreSQL构建AIGC应用
通过该实验体验在阿里云百炼中构建企业专属知识库构建及应用全流程。同时体验使用ADB-PG向量检索引擎提供专属安全存储,保障企业数据隐私安全。
AnalyticDB PostgreSQL 企业智能数据中台:一站式管理数据服务资产
企业在数据仓库之上可构建丰富的数据服务用以支持数据应用及业务场景;ADB PG推出全新企业智能数据平台,用以帮助用户一站式的管理企业数据服务资产,包括创建, 管理,探索, 监控等; 助力企业在现有平台之上快速构建起数据服务资产体系
相关文章
|
2月前
|
缓存 Java Shell
Android 系统缓存扫描与清理方法分析
Android 系统缓存从原理探索到实现。
60 15
Android 系统缓存扫描与清理方法分析
|
25天前
|
Java Linux API
Android SDK
【10月更文挑战第21天】
65 1
|
25天前
|
算法 JavaScript Android开发
|
28天前
|
安全 搜索推荐 Android开发
揭秘安卓与iOS系统的差异:技术深度对比
【10月更文挑战第27天】 本文深入探讨了安卓(Android)与iOS两大移动操作系统的技术特点和用户体验差异。通过对比两者的系统架构、应用生态、用户界面、安全性等方面,揭示了为何这两种系统能够在市场中各占一席之地,并为用户提供不同的选择。文章旨在为读者提供一个全面的视角,理解两种系统的优势与局限,从而更好地根据自己的需求做出选择。
69 2
|
2月前
|
程序员 开发工具 Android开发
Android|使用阿里云推流 SDK 实现双路推流不同画面
本文记录了一种使用没有原生支持多路推流的阿里云推流 Android SDK,实现同时推送两路不同画面的流的方法。
59 7
|
2月前
|
安全 搜索推荐 Android开发
揭秘iOS与Android系统的差异:一场技术与哲学的较量
在当今数字化时代,智能手机操作系统的选择成为了用户个性化表达和技术偏好的重要标志。iOS和Android,作为市场上两大主流操作系统,它们之间的竞争不仅仅是技术的比拼,更是设计理念、用户体验和生态系统构建的全面较量。本文将深入探讨iOS与Android在系统架构、应用生态、用户界面及安全性等方面的本质区别,揭示这两种系统背后的哲学思想和市场策略,帮助读者更全面地理解两者的优劣,从而做出更适合自己的选择。
|
27天前
|
安全 搜索推荐 程序员
深入探索Android系统的碎片化问题及其解决方案
在移动操作系统的世界中,Android以其开放性和灵活性赢得了广泛的市场份额。然而,这种开放性也带来了一个众所周知的问题——系统碎片化。本文旨在探讨Android系统碎片化的现状、成因以及可能的解决方案,为开发者和用户提供一种全新的视角来理解这一现象。通过分析不同版本的Android系统分布、硬件多样性以及更新机制的影响,我们提出了一系列针对性的策略,旨在减少碎片化带来的影响,提升用户体验。
|
27天前
|
安全 Android开发 iOS开发
深入探索iOS与Android系统的差异性及优化策略
在当今数字化时代,移动操作系统的竞争尤为激烈,其中iOS和Android作为市场上的两大巨头,各自拥有庞大的用户基础和独特的技术特点。本文旨在通过对比分析iOS与Android的核心差异,探讨各自的优势与局限,并提出针对性的优化策略,以期为用户提供更优质的使用体验和为开发者提供有价值的参考。
|
29天前
|
安全 Android开发 iOS开发
安卓系统与iOS系统的比较####
【10月更文挑战第26天】 本文将深入探讨安卓(Android)和iOS这两大主流移动操作系统的各自特点、优势与不足。通过对比分析,帮助读者更好地理解两者在用户体验、应用生态、系统安全等方面的差异,从而为消费者在选择智能手机时提供参考依据。无论你是技术爱好者还是普通用户,这篇文章都将为你揭示两大系统背后的故事和技术细节。 ####
42 0
|
4月前
|
JavaScript 前端开发 Java
[Android][Framework]系统jar包,sdk的制作及引用
[Android][Framework]系统jar包,sdk的制作及引用
99 0