Android开发奥秘:工具IDE,SDK,谷歌服务等一网打尽

译文
移动开发 Android
当大家计划采取行动,着手开发自己的第一款Android应用程序时,数量庞大、种类繁多的工具清单很可能成为横亘在我们面前的第一道障碍。不过下载并准备Android开发环境的过程其实并不复杂,而这要归功于便捷的一体式软件捆绑包,它能帮助大家随时使用大多数——即使还不是所有——开发工作中可能需要的工具。

【51CTO译文】当大家计划采取行动,着手开发自己的第一款Android应用程序时,数量庞大、种类繁多的工具清单很可能成为横亘在我们面前的第一道障碍。不过下载并准备Android开发环境的过程其实并不复杂,而这要归功于便捷的一体式软件捆绑包,它能帮助大家随时使用大多数——即使还不是所有——开发工作中可能需要的工具。

下载并采用这种单一捆绑包的弊端在于,我们很可能搞不清楚自己的Android开发环境中包含有哪些具体工具,而且对很多朋友来说了解每款工具的实际作用也是项难度颇高的任务。

在今天的文章中,我们将揭开这层神秘的面纱,带大家一同了解开发首款Android应用程序时将要用到的主流工具。对于那些希望利用额外功能对Android项目进行深入强化的朋友来说,后文将要介绍的Google Play Services概述同样不容错过——大家可以利用它为自己的应用程序添加Google+以及谷歌地图等内容,并真正把开发成果转化为实际收益。

不过在汇总自己的Android开导得工具包之前,大家首先需要作出一个重要决定——我们到底要利用哪种集成开发环境(简称IDE)来打造自己的应用程序?

1. Eclipse还是Android Studio?

直到不久之前,Eclipse与ADT(即Android开发工具)插件这一黄金组合仍然是Android应用开发领域的推荐环境。不过在谷歌I/O 2013大会上,谷歌颠覆了这一切、将其专门针对Android开发工作所设计的IDE方案Android Studio呈现在世人面前。

Android Studio的发布让Android开发者的生活变得更为复杂,因为大家不得不首先对两大IDE方案进行权衡利弊,看看如何选择才能让后续工作变得更为顺畅。

在考虑到底使用Android Studio还是Eclipse作为自己的开发环境时,起到决定性作用的关键因素在于我们到底期望从IDE当中得到些什么。

用户界面注重清晰的流程还是丰富的功能

Eclipse提供的通用开发环境能够通过插件实现扩展,从而帮助大家在这同一套IDE当中利用不同编程语言开发出多种应用程序类型。

对于Android开发工作而言,我们可以利用Android开发工具或者简称ADT插件对Eclipse进行扩展。虽然ADT在设计思路上主要面向Android开发场景,但Eclipse却并不是这样——也就是说,后者当中包含大量与Android应用开发毫无关系的功能。

如果大家已经是经验丰富的Eclipse用户,那么很可能已经对Eclipse那功能丰富但却略显杂乱的用户界面非常熟悉。不过如果各位才刚刚接触Eclipse,则很可能需要花上一段时间来确定其中哪些内容有助于自己的Android开发工作、而哪些内容完全是在搞乱界面显示效果。

在这方面,Android Studio相较于Eclipse拥有显著优势。Android Studio拥有一套主干式用户界面以及简约而不简单的功能配置,虽然在数量上相对落后、但每一项功能都会切实帮助各位完成Android应用开发任务。

选择成熟社区还是独力单干

Eclipse是一套广受赞誉的IDE,并拥有非常繁荣的社区体系,这意味着大家在需要帮助时可以获得丰富而且及时的帮助信息——包括博文、教程、谷歌小组、视频指南、论坛乃至广泛的Eclipse ADT使用文档。

相比之下,Android Studio在这方面则显得比较被动。作为一个新兴项目,Android Studio自然没有时间建立起同样丰富的辅助性资源。尽管一部分基于Eclipse的资源也同样适用于Android Studio使用任务,但如果大家在使用Android Studio环境时碰到比较个别的问题,那么以Eclipse为核心的信息恐怕起不到什么指导作用。

坚实稳定还是新兴技术

作为一套成熟的IDE,Eclipse的软件表现非常稳定而且可靠,相比之下Android Studio目前尚处于早期预览阶段,大家很可能会在使用过程中遭遇各类错误以及功能缺失情况。

Android Studio拥有大家希望从全新IDE当中获得的全部创新型功能,但这一切在早期预览状态的拖累下变得大打折扣。根据实际情况的不同,Android Studio正式版本的缺失有可能让我们面临两难选择。如果大家打算开发的是一个小型个人项目,那么漏洞与功能缺失也许还不足为虑。然而,如果大家需要的是一套能够开发出对业务拓展工作至关重要的商用Android应用程序,那么Android Studio的早期预览状态意味着它恐怕不会成为最明智的选项。

大家对Gradle是否熟悉?

Android Studio配备有Gradle插件,也就是说只要我们选择了这套IDE、那么最终肯定要利用Gradle对自己Android应用程序的构建、测试、发布以及部署进行自动化处理。

如果大家对Gradle感到陌生或者没时间、没兴趣学习Gradle,那么继续选择Eclipse这条道路可能更合适,这是因为Gradle与Android Studio的衔接如此紧密、大家要使用任何一种其它构建工具都必然遇到极为纠结的状况。

结论

“要Android Studio还是Eclipse?”这个问题没有显而易见的答案,实际选择取决于一系列相关因素,例如大家对该软件是否熟悉、是否有时间或者有意愿学习新技术再加上各位打算开发的Android应用程序类型等等。

举例来说,如果大家有时间同时乐于学习新的技术方案、同时对Gradle很感兴趣,那么Android Studio的赢面显然会大大提高。然而,如果大家已经是一位资深Eclipse用户,而且繁重的日常工作让各位根本无暇涉足新IDE所设置的学习门槛,那么继续使用Eclipse来完成开发也许是更为明智的决定。

无论大家到底是选择Android Studio还是Eclipse与ADT插件的组合,在决定了自己的开发环境之后、接下来要面对工具集都是完全相同的——这就是Android SDK。

2. Android SDK是什么东东?

Android SDK由多种不同类型的工具所组成,从库到源代码再到示例项目等等,这一切都是创建Android应用程序所必需的资源。虽然对Android SDK所提供的全部内容作出介绍会远远超出本文的篇幅限制,但接下来我们仍要用简短的语言概述一部分Android应用开发所必需且大家应当尽快熟悉的重要工具。

模拟器

Android SDK当中包含一款移动设备模拟器,它允许大家以多种设备平台为基础对自己的Android应用进行测试、同时又不必真正购买对应的设备产品。

通过工具名称就能看出,模拟器的专长在于通过运行多种Android虚拟设备(简称AVD)配置方案来模拟不同各类的Android设备。在典型的Android项目生命周期当中,大家需要为该模拟器创建一系列AVD配置,每套配置都对应不同的Android设备。

AVD管理器

AVD管理器是我们创建、编辑、修复、删除以及启用AVD配置方案的平台。AVD管理器还包含一套已知设备定义列表,这能大大简化我们对尚不清楚其硬件与软件规范的特定设备型号的模拟过程。

SDK管理器

Android SDK将各类工具、平台、API以及其它组件独立旋转在不同的包当中,允许大家通过SDK管理器对其进行分别更新与下载。其中一些软件包推荐使用,甚至有部分已经在我们下载Android SDK的同时就被安装完成了,但也有很多软件包属于可选方案、只适合那些在开发特定Android应用程序时有意采用的朋友。

DDMS

Dalvik调试监控服务器或者简称为DDMS是一款调试工具,能够执行多种调试任务,例如追踪哪些对象正被分配到内存当中、哪些线程正处于运行状态以及特定进程正在使用哪部分堆区内存。

DDMS当中还包含网络使用情况详情标签,用于追踪网络请求并分析我们的应用程序正如何进行数据传输。尽管DDMS目前在Android Studio与Eclipse当中都能正常发挥全部作用,但其具体访问方式却有所区别。Eclipse用户可以通过Window > Open Perspective > DDMS的顺序访问DDMS,而Android Studio用户则需要点击工具栏Monitor按钮(该按钮配有朴素的Android图标)进行访问。

Lint

Lint是一款代码扫描工具,旨在通过检查Android项目源文件中的漏洞与可资优化的部分改进我们编码成果的结构质量。

尽管Lint被包含在Android SDK当中,但我们在使用Eclipse与Android Studio时、对其进行启动的方式仍然有所区别。在Android Stuio当中,我们可以通过选定Analyze > Inspect Code来运行Lint。而在Eclipse方面,Lint会在我们对项目中的布局编辑器或者XML文件进行修改时自动运行。同样,我们在导出项目时它也会加以运行。

Android调试桥

Android调试桥也被简称为adb,它允许我们通过直接在命令行中输入指令的方式执行一系列调试操作。大家可以在官方Android说明文档中找到adb命令的综合列表(点击此处查看)。

无论大家选择了Android Studio还是Eclipse,都可以访问全部前面提到的Android SDK工具。只不过根据IDE选择的不同,其它一些可用工具包的种类可能有所区别。

#p#

3. Eclipse工具包

尽管属于Android Studio的竞争对手,Eclipse所配备的ADT插件同样拥有大量适用于Android开发者群体的功能。如果大家选择Eclipse作为自己的IDE,则可以下载所有捆绑软件包——其中包括Android SDK以及以下重要项目。

Eclipse

该IDE提供一套通用开发环境,大家可以利用不同插件对其进行定制。

ADT插件

Android开发工具插件利用Android特有的功能对Eclipse环境进行了扩展,其中包括能够自动生成Android应用程序基础文件结构的项目创建向导,能够帮助大家为资源文件及Android manifest编写有效代码的定制XML编辑器等等。

ADT插件还提供一套面向多种SDK工具的图形用户界面,允许大家利用它对很多原本只能通过命令行使用的SDK工具进行访问,其中包括Android调试桥以及DDMS——我们在前文中刚刚对二者进行过阐述。

将Eclipse与ADT插件组合设置为自己的开发环境非常简单:

  1. 首先下载ADT软件包。
  2. 下载完成之后,解压该软件包。
  3. 解压完成后将其打开。ADT插件的名称为adt-bundle,接下来的数字部分视软件包版本而定。
  4. 打开Eclipse文件夹并双击Eclipse应用程序图标,这样Eclipse就将正式启动。
  5. Eclipse当中保存我们已经创建的所有项目的位置被称为workspace。在Windows系统中,其默认路径为C:\Users\Name\Documents\workspace。如果需要,大家可以变更这一路径并点击OK确认。

Eclipse在启动后,所有已经整合的ADT插件与Android SDK也将开始运行。这意味着在Eclipse启动完成时,大家就可以着手创建自己的第一个Android应用程序了。

4. Android Studio工具包

尽管目前尚处于早期预览版本,Android Studio仍然拥有大量极具吸引力的功能,更不用提谷歌的大力推动了。如果大家决定下载Android Studio软件包,则需要额外获取Android SDK与以下附加项目。

Android Studio

在集成开发环境的世界中,Android Studio拥有独一无二的定义——它在设计思路上专门也仅仅面向Android应用程序的开发工作。

Gradle

Android Studio配备一款内置Android插件,也就是Gradle,并利用Gradle作为其创建系统。在Android Studio当中,大家可以利用Gradle执行多种任务,例如自定义、配置并以本地文件系统或者远程文件系统为目的地对项目创建流程进行扩展或者管理其关联性。

Gradle还能够利用单一Android项目中的不同配置生成多种APK,从而帮助大家让自己的开发成果支持尽可能多的实际设备类型。

如果大家决定使用Android Studio的早期预览版本,可以点击此处从Android开发者网站上下载其最新版本。在Windows系统中,启动可执行文件来打开Android Studio即可开始我们的Android应用开发之旅。

5. Google Play Services

本文已经向大家介绍了Android SDK并说明了如何安装并设置我们已经选定的IDE。不过,如果大家希望能为自己的用户带来更为丰富的使用体验,那么也可以将Google Play Services添加到自己的开发环境中来。

Google Play Services是一套额外的可选方案,允许大家为自己的Android应用添加更多功能与特性。Google Play Services能够为Android开发人员带来诸多便利。下面我们就逐一对其进行解读。

Google+

利用Google+内容让我们的应用程序更加丰富。Google+平台服务能帮助我们提供更富个性化的用户使用体验,方法很简单——它能够将Google+账户内的联系人信息提取并交付给应用程序。举例来说,大家的应用程序可以利用Google+信息向特定对象发送问候或者使用对方发布的Google+资料图片作为其头像。

除此之外,我们的应用程序也可以将信息推送至Google+当中。举例来说,它允许用户将自己的游戏最高分或者其它应用程序内部的成就信息发送Google+资料,或者分享给其他Google+联系人。

谷歌地图

在应用程序当中内置谷歌地图内容,包括3D地图、混合地图甚至是谷歌街景内容。请注意,谷歌地图Android API要求使用API密钥,大家可以通过Google API控制台来获取。

Google Play应用程序内购机制

这项服务允许大家通过自己的应用程序销售数字化内容,并借此将Android项目成果转化为经济收益。这些收费内容可以通过下载获得,例如视频、图片或者其它虚拟内容,当然也可以是游戏的新关卡、解锁新功能或者游戏内的道具——例如宝石以及额外的生命值等等。

Google Play全权负责这些交易的进行,因此大家不必费心自己设计付费验证与价格计算功能。请注意,应用程序内购机制要求我们创建一套Google Play开发者控制台账户以及Google Wallet商家账户。大家还需要安装Google Play Billing库。听起来复杂,但实际操作也很简单。大家只需启动SDK管理器、打开Extras选项、选择Google Play Billing库并点击安装软件包即可。

这还只是Google Play Services所能提供的一部分功能。大家可以点击此处查看Android官方说明文档以了解更多与Google Play Services相关的细节信息。

Before you can take advantage of Google Play Services, you need to download an additional package. You can do this following these steps:在大家充分享受Google Play Services带来的便利之前,首先需要下载另一个额外软件包。我们需要遵循以下三个步骤来完成安装。

  1. 在大家选定的IDE当中打开Android SDK管理器。
  2. 展开Extras选项。
  3. 选择Google Play Services。请注意,如果大家正在使用的是Android Studio,则还需要安装Google Repository,我们可以在Extras分类下找到它。
  4. 在点击安装软件包之后,SDK管理器将逐步完成Google Play Services的安装工作。

总结

无论大家选择了Eclipse还是Android Studio作为自己的IDE,在阅读了本文之后应该都对Android开发领域的工具系统有了更为准确的认识。此外,各位应该也已经了解了哪些工具能够与自己的IDE匹配在一起并发挥作用。

如果大家按照本文的顺序一步步操作,那么现在开发环境应该已经安装完毕并蓄势待发了。接下来惟一要做的就是大展拳脚,创建新的Android项目并着手进行开发工作。

核子可乐译

原文链接:Android: Tools of Trade

转载请保留原文链接:http://mobile.51cto.com/abased-444150.htm

责任编辑:闫佳明 来源: 51CTO
相关推荐

2024-04-26 00:25:52

Rust语法生命周期

2021-08-05 06:54:05

流程控制default

2013-08-02 10:52:10

Android UI控件

2013-10-16 14:18:02

工具图像处理

2024-02-27 10:11:36

前端CSS@规则

2021-10-11 07:55:42

浏览器语法Webpack

2020-02-21 08:45:45

PythonWeb开发框架

2024-04-07 08:41:34

2024-06-12 00:00:05

2024-08-26 10:01:50

2010-08-25 01:59:00

2011-12-02 09:22:23

网络管理NetQos

2015-06-01 10:37:41

数字取证数字取证工具

2023-04-06 09:08:41

BPM流程引擎

2020-09-27 10:37:51

谷歌Transformer机器学习

2024-02-23 08:14:01

项目开发Spring

2021-05-20 11:17:49

加密货币区块链印度

2021-10-29 09:32:33

springboot 静态变量项目

2019-07-24 15:30:00

SQL注入数据库

2023-09-06 18:37:45

CSS选择器符号
点赞
收藏

51CTO技术栈公众号