《Android 应用案例开发大全(第3版)》——第1.3节Android开发环境的搭建

简介:

本节书摘来自异步社区《Android 应用案例开发大全(第3版)》一书中的第1章,第1.3节Android开发环境的搭建,作者 吴亚峰 , 苏亚光 , 于复兴,更多章节内容可以访问云栖社区“异步社区”公众号查看

1.3 Android开发环境的搭建
本节主要讲解基于Eclipse的Android开发环境的搭建(包括SDK的下载和SDK的配置)、模拟器的创建和运行,以及Android开发环境搭建好之后,对其开发环境进行测试并创建第一个Android应用程序Hello Android等相关知识。

1.3.1 Android SDK的下载
前面已经对Android平台进行了简单的介绍,从本小节开始,将带领读者逐步搭建自己的开发环境。Android SDK是开发Android应用程序的基础开发环境,其本身是免费的,下面将向读者介绍Android SDK的下载,其具体步骤如下。

(1)首先在浏览器中输入http://developer.android.com/sdk/index.html,打开Android SDK的官方下载网站,如图1-5所示。点击网页右下角被椭圆圈中的内容为“Download the SDK……”的区域,进入SDK的下载页面,如图1-6所示。

(2)进入到SDK的下载页面后,按照图1-6中被椭圆圈中的区域进行下载项选择(这里选择的是Windows下的32位版本),然后点击网页正下方被椭圆圈出的内容为“Download the SDK……”的区域进行下载,此时浏览器会弹出下载对话框(这一点不同的浏览器会有所不同),如图1-7所示。


6230fa822050836ee82d653522afa6f4479cd6bb


165bdb6c4b678be2a81395ab1c57f9eaf9105b50

完成以上步骤,等待Android SDK下载完成,就可以进行环境搭建的下一步工作了,也就是对Android SDK进行相关的配置,这些内容将在下一小节中向读者介绍。

1.3.2 Android SDK的配置
下载完成后,就可以对Android SDK进行解压和配置了,主要步骤如下。

(1)Android SDK下载成功后,会得到一个名称为“adt-bundle-windows-x86的压缩包(随选择下载版本的不同,此名称可能不同)。将此压缩包解压得到同名文件夹,如图1-8所示。


64346b86226fe10b537d90d47dbe148dbaf818e0

(2)打开解压后的文件夹,如图1-9所示。其中名称为“eclipse”的子文件夹为绑定了ADT插件的用于Android应用程序开发的集成开发环境——Eclipse。另外一个名称为“sdk”的子文件夹则是要进行配置的Android SDK。

(3)打开“eclipse”子文件夹,如图1-10所示。接着点击其中的“eclipse.exe”,启动Eclipse集成开发环境,此时会出现如图1-11所示的界面。

(4)图1-11所示界面是提醒读者设置自己的项目工作区路径,这里采用的是“E: 软件workspace”。建议读者的工作区路径设置和这里介绍的保持一致,这样在进行后继案例的学习时可能会方便不少,当然读者也可以采用自己特定的工作区路径。


f8c0c43f5dce0b243fe345189075e1938890ff8c

提示
若读者的工作区路径与笔者这里设置的不一样,也是可以的。但导入的Android项目都需要对构建器进行修改才能正常编译运行。如何修改构建器会在后面进行介绍,读者到时注意一下即可。


dfa229baeadde4bb43e8dd06d5759886f0ed2cb7

(5)指定完工作区路径后,就进入了Eclipse的主界面,如图1-12所示。在此界面中选择“Window”菜单下面的“Preferences”子菜单项,系统将弹出“Preferences”配置界面,如图1-13所示。

(6)选择“Preferences”配置界面左侧列表中的“Android”选项(如图1-13步骤(1)所示),然后点击界面右上侧的“Browse…”按钮(如图1-13步骤(2)所示),在弹出的文件浏览界面中选中前面解压得到的“sdk”目录(如图1-13步骤(3)所示)。

(7)选中“sdk”目录后,点击文件浏览界面中的确定按钮(如图1-13步骤(4)所示)。等文件浏览界面消失后,再点击“Preferences”配置界面中右下侧的“Apply”按钮(如图1-13步骤(5)所示),若此时看到图1-13中列出了多个Android版本的信息(如图1-13中“配置成功的标志”框所圈中的部分),则说明配置成功。

(8)最后点击“Preferences”配置界面中右下侧的“OK”按钮(如图1-13步骤(6)所示)即完成了整个Android SDK的配置。

(9)图1-13中只有“Android 4.4W”版本,如果需要其他的版本,可点击Eclipse主界面中的“Android SDK Manager”按钮,进入加载界面,如图1-14所示。加载完成后,进入Android SDK Manager界面,如图1-15所示,在该界面勾选需要下载的SDK版本,再单击“Install……”按钮进行下载、安装即可。


338d98e1d9c780d9c816251c325974ccc26e6490

提示
在图1-15SDK下载界面中单击“Install……”进行下载安装SDK版本时,需要联网下载,且下载速度较慢,请读者耐心等待。

1.3.3 创建并启动模拟器
开发环境搭建基本完成后,在正式开发Android应用程序之前,还有一个很重要的工作就是创建模拟器。模拟器可以在初学者没有实际设备的情况下在PC上对应用程序进行简单的运行测试,很大程度上降低了学习的成本。模拟器的创建很简单,其具体步骤如下。

(1)首先在Eclipse中单击图片 17(Android Virtual Device Manager)按钮,如图1-16所示。单击图片 18按钮后,系统将弹出“Android Virtual Device Manager”对话框,如图1-17所示。


9dd10748437524a913ea9c4ee77125956a9b98bb

(2)在弹出的Android SDK and AVD Manager对话框中单击“New”按钮(如图1-18所示),系统将弹出Create new Android Virtual Device(AVD)对话框,如图1-19所示。


45afc8fde8053de109a6c160ed714ff44e3e05a4

(3)在Create new Android Virtual Device(AVD)对话框中输入模拟器的名称(这里输入的是android),下拉Target列表选中Android4.2.2-API Level 17,在Internal Storage面板中输入100(代表内部存储容量为100MB),在SD Card面板中的Size文本框中输入100(代表SD卡容量为100MB),如图1-20所示。

(4)然后设置模拟器显示屏分辨率为5.1"WVGA(480800),最后勾选Use Host GPU开启本地GPU渲染支持,如图1-20所示。模拟器配置完成后,单击“OK”按钮,即可完成创建指定版本的Android SDK模拟器。


86eeb9c2a87caf1ed889bdaa330897500bf66d78

(5)创建完Android SDK的模拟器后,在Android SDK and AVD Manager对话框中就可以显示出创建的Android SDK模拟器了,如图1-21所示。在Android SDK and AVD Manager对话框中选中创建的Android模拟器,单击“Start”按钮(如图1-22所示),弹出Launch Options对话框,如图1-23所示。

(6)在弹出的Launch Options对话框中单击“Launch”按钮(如图1-24所示)系统将启动Android SDK模拟器,启动完成后的效果如图1-25所示。


1e8ba1876d93211a34e64be6683d452365b3e816


2f5cd9073cfadeb68752c9751e6999e0ab649e37

提示
运行模拟器时可能会很慢,有时甚至可能达到几分钟时间,如果没有报错,请读者耐心等待。

1.3.4 第一个Android程序
前面小节已经介绍了Android的来龙去脉、Android SDK的下载、Android SDK的配置和创建及启动模拟器等重要内容,接下来将带领读者构建第一个Android应用程序并对该程序进行简单的讲解,其具体内容如下。

1.创建第一个Android应用程序
在学习各种编程语言时,写的第一个程序都是Hello World。在本小节中将详细讲述如何在Android开发中开发自己的第一个Android程序——Hello Android。希望读者通过本小节的学习,熟悉Android程序的创建。其具体步骤如下。

(1)点击eclipse.exe,启动Eclipse,依次选择“File/New/Android Application Project”,如图1-26所示。或者点击图片 30按钮后,系统将弹出新建项目对话框,如图1-27所示。


961f41a7a9d4f7d2eb4d64472549e56c987e6404

(2)在新建项目对话框中选择“Android/Android Application Project”,如图1-28所示,然后单击“Next”按钮,执行下一步,即弹出“New Android Application”对话框,如图1-29所示。

(3)在“New Android Application”对话框中输入应用程序的名称(在这里输入的是Sample_1_1),然后在Project Name中输入项目名称(这里输入的名称与Application Name中的相同,当然也可以不同),同时在Package Name中输入应用程序的包名(这里输入的是wyf.ytl),如图1-29所示。

(4)接着在Minimum Required SDK中选择应用程序最低版本(这里选择的是Android 2.2版本),最后在Target SDK中选择应用程序的目标版本,都填完后,整体情况如图1-29所示。


dd028f796d07423aa3b26f53603b4b07cddf516f

提示
创建项目时输入项目包名时,需要至少使用二级包名,否则在该对话框上方会显示“Package name must have at least two identifiers.”的错误信息。
(5)单击“Next”按钮后进入如图1-30所示的界面,根据需要勾选是否创建自定义图标,勾选“Create activity”,根据需要也可更改默认的项目路径,最后单击“Next”按钮执行下一步。接着在如图1-31所示的界面中选择Activity样式,此处选择的是“Blank Activity”,单击“Next”按钮执行下一步。

(6)在如图1-32所示的界面中输入Activity Name——Hello Android和Layout Name——main,单击“Finish”按钮完成项目的创建。此时在Eclipse的Project Explorer界面中会自动添加创建的项目Sample_1_1,其目录结构如图1-33所示。


e102b08573cc90f0a8bdfdb717ad639a2d7dafc6


01422b3aa511ab65db202d3119055ebd1ddf192a

(7)在项目名上单击鼠标右键,然后依次选择“Run As/Android Application”即可运行刚才创建的HelloAndroid项目,该项目在模拟器上的运行效果如图1-34和图1-35所示。


d783d803bbf87aa17d8d27cab19996a52a7bb25d

提示
因为有很多程序或者游戏是横屏模式的,所以在程序调试过程中,可能需要将模拟器切换成横屏模式,读者可以通过使用快捷键Ctrl+F12来切换模拟器的横、竖屏模式,HelloAndroid程序在横屏模拟器中运行效果如图1-35所示。
2.HelloAndroid的简单讲解
通过前面的学习,读者已经能够创建并运行简单的Android程序了,但可能对Android项目还不够了解,接下来将通过对HelloAndroid程序的详细介绍使读者了解Android项目的目录结构以及HelloAndroid的运行机理。

(1)首先将介绍一下HelloAndroid项目中各个目录和文件的作用,正确理解Android项目中各个目录和文件的作用,可以使读者对Android项目的运行机理有一个更加深刻的印象,对以后开发其他Android项目有很大帮助。

src目录:该目录用来存放应用程序中所有的源代码,其中代码的源文件一般是存放在相应的包下面。在开发Android应用程序时,大部分时间都是在编写src中的源代码,src 中的源代码可以说是Android应用程序的基础。
gen目录:该目录下一般只有一个文件,即R文件。该文件是由ADT自动产生的,存放的是应用程序中所使用的全部资源文件的ID,在应用程序开发过程中只是使用R文件,一般不需人工修改该文件。
assets目录:该目录中存放Android应用程序中使用的外部资源文件,例如音频文件、视频文件、数据文件等。在Android应用程序中可以通过输入或输出流对asserts目录中的文件进行读写操作,从而使Android应用程序更加具有吸引力。
res资源目录:该目录下一般有drawable系列文件、layout布局文件以及values资源描述文件,这些文件用来存放Android应用程序中所需的图片资源、界面描述文件以及资源描述文件等。后面将对这些文件夹逐一进行介绍。
drawable系列文件夹:一般有drawable-hdpi、drawable-mdpi、drawable-ldpi3个文件夹,这3个文件夹分别用来存放不同分辨率目标设备的图片资源。当应用程序在目标设备上运行时,系统会自动根据目标设备的分辨率选择对应文件夹下的图片。
layout文件夹:该文件夹下包含了所有使用xml格式的界面描述文件,这些文件主要用于表述应用程序中用户界面的布局。
values文件夹:该文件夹中包含了一些xml格式的资源描述文件,一般包括string.xml(字符串资源)、colors.xml(颜色资源)、style(样式资源)等。
AndroidManifest.xml,该文件是整个程序的系统控制文件,是每个应用程序都不可缺少的。它描述了应用程序有哪些组件、哪些资源、哪些权限等。
(2)上面介绍了HelloAndroid项目中各个目录和文件的作用,接下来介绍的是该项目的系统控制文件AndroidManifest.xml,该文件的主要功能为定义该项目的使用架构、版本号、SDK的版本以及声明Activity组件等,其具体代码如下。

1 <?xml version="1.0" encoding="utf-8"?>   <!--XML的版本以及编码方式-->
2 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
3  package="wyf.ytl"
4      android:versionCode="1"
5      android:versionName="1.0" > <!--该标记定义了该项目的使用架构,所在的包以及版本号-->
6     <uses-sdk  android:minSdkVersion="14"
7           android:targetSdkVersion="17" /> <!-- 声明SDK的版本 -->
8  <application android:icon="@drawable/ic_launcher" 
9   android:label="@string/app_name"
10          android:theme="@style/AppTheme"><!-- 定义了该项目在手机中的图标以及名称 -->
11      <activity android:name="wyf.ytl.MainActivity"
12               android:label="@string/app_name" > <!-- 声明Activity组件 -->
13     <intent-filter>
14            <action android:name="android.intent.action.MAIN" />
15    <category android:name="android.intent.category.LAUNCHER" />
16    </intent-filter>     <!-- 声明Activity可以接受的Intent -->
17    </activity>
18      </application>
19 </manifest>

说明
定义了一个名为HelloAndroid的Activity以及该Activity能够接受的intent,并且给出了程序的版本、编码方式、用到的架构、该程序所在的包与版本号、程序的SDK版本程序、在手机上的显示图标、显示名称以及显示风格等。
(3)上面介绍了HelloAndroid项目的系统控制文件AndroidManifest.xml,接下来介绍的是该项目的布局文件main.xml,该文件的主要功能为声明XML文件的版本以及编码方式、定义布局并添加控件TextView,其具体代码如下。

1 <?xml version="1.0" encoding="utf-8"?>  <!-- XML的版本以及编码方式 -->
2 < RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
3   android:orientation="vertical"
4   android:layout_width="fill_parent"
5   android:layout_height="fill_parent"  >  <!--定义了一个布局,布局方式是垂直的-->
6 <TextView
8   android:layout_width="fill_parent" 
9   android:layout_height="wrap_content" 
10   android:text="@string/hello" />   <!--向布局中添加一个TextView控件-->
11 </ RelativeLayout >

说明
定义了布局方式为RelativeLayout,且左右和上下的填充方式为fill_parent,并向该布局中添加了一个TextView控件,其宽度和高度模式分别为fill_parent、wrap_content,在TextView控件显示的内容为string.xml中的hello的内容。
(4)上面介绍了本项目的布局文件main.xml,接下来将为读者介绍的是项目的主控制类HelloAndroid。本类为继承自Android系统Activity的子类,其主要功能为调用父类的onCreate方法,并切换到main布局,其具体代码如下。

1 package wyf.ytl;
2 import android.app.Activity;      //引入相关类
3 import android.os.Bundle;
4 public class HelloAndroid extends Activity {   //定义一个Activity
5   @Override
6   public void onCreate(Bundle savedInstanceState) { //重写的onCreate回调方法
7     super.onCreate(savedInstanceState);   //调用基类的onCreate方法
8     setContentView(R.layout.main);    //指定当前显示的布局
9 }}

说明
对继承自Activity子类的声明,重写了Activity的onCreate回调方法,在onCreate方法中先调用基类的onCreate方法,然后指定用户界面为R.layout.main,对应的文件为res/layout/main.xml。

相关文章
|
3天前
|
Linux 编译器 Android开发
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
在Linux环境下,本文指导如何交叉编译x265的so库以适应Android。首先,需安装cmake和下载android-ndk-r21e。接着,下载x265源码,修改crosscompile.cmake的编译器设置。配置x265源码,使用指定的NDK路径,并在配置界面修改相关选项。随后,修改编译规则,编译并安装x265,调整pc描述文件并更新PKG_CONFIG_PATH。最后,修改FFmpeg配置脚本启用x265支持,编译安装FFmpeg,将生成的so文件导入Android工程,调整gradle配置以确保顺利运行。
23 1
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
|
21天前
|
移动开发 Java Android开发
构建高效Android应用:探究Kotlin与Java的性能差异
【4月更文挑战第3天】在移动开发领域,性能优化一直是开发者关注的焦点。随着Kotlin的兴起,其在Android开发中的地位逐渐上升,但关于其与Java在性能方面的对比,尚无明确共识。本文通过深入分析并结合实际测试数据,探讨了Kotlin与Java在Android平台上的性能表现,揭示了在不同场景下两者的差异及其对应用性能的潜在影响,为开发者在选择编程语言时提供参考依据。
|
22天前
|
数据库 Android开发 开发者
构建高效Android应用:Kotlin协程的实践指南
【4月更文挑战第2天】随着移动应用开发的不断进步,开发者们寻求更流畅、高效的用户体验。在Android平台上,Kotlin语言凭借其简洁性和功能性赢得了开发社区的广泛支持。特别是Kotlin协程,作为一种轻量级的并发处理方案,使得异步编程变得更加简单和直观。本文将深入探讨Kotlin协程的核心概念、使用场景以及如何将其应用于Android开发中,以提高应用性能和响应能力。通过实际案例分析,我们将展示协程如何简化复杂任务,优化资源管理,并为最终用户提供更加流畅的体验。
|
22天前
|
开发框架 安全 Android开发
探索安卓系统的新趋势:智能家居应用的蓬勃发展
随着智能家居概念的兴起,安卓系统在智能家居应用领域的应用日益广泛。本文将探讨安卓系统在智能家居应用开发方面的最新趋势和创新,以及其对用户生活的影响。
14 2
|
25天前
|
缓存 监控 Java
构建高效Android应用:从优化用户体验到提升性能
在竞争激烈的移动应用市场中,为用户提供流畅和高效的体验是至关重要的。本文深入探讨了如何通过多种技术手段来优化Android应用的性能,包括UI响应性、内存管理和多线程处理。同时,我们还将讨论如何利用最新的Android框架和工具来诊断和解决性能瓶颈。通过实例分析和最佳实践,读者将能够理解并实施必要的优化策略,以确保他们的应用在保持响应迅速的同时,还能够有效地利用系统资源。
|
22天前
|
Java Android开发 开发者
构建高效Android应用:Kotlin协程的实践与优化
在响应式编程范式日益盛行的今天,Kotlin协程作为一种轻量级的线程管理解决方案,为Android开发带来了性能和效率的双重提升。本文旨在探讨Kotlin协程的核心概念、实践方法及其在Android应用中的优化策略,帮助开发者构建更加流畅和高效的应用程序。通过深入分析协程的原理与应用场景,结合实际案例,本文将指导读者如何优雅地解决异步任务处理,避免阻塞UI线程,从而优化用户体验。
|
1天前
|
存储 缓存 安全
Android系统 应用存储路径与权限
Android系统 应用存储路径与权限
5 0
Android系统 应用存储路径与权限
|
1天前
|
存储 安全 Android开发
Android系统 自定义系统和应用权限
Android系统 自定义系统和应用权限
5 0
|
6天前
|
缓存 移动开发 Android开发
构建高效Android应用:从优化用户体验到提升性能表现
【4月更文挑战第18天】 在移动开发的世界中,打造一个既快速又流畅的Android应用并非易事。本文深入探讨了如何通过一系列创新的技术策略来提升应用性能和用户体验。我们将从用户界面(UI)设计的简约性原则出发,探索响应式布局和Material Design的实践,再深入剖析后台任务处理、内存管理和电池寿命优化的技巧。此外,文中还将讨论最新的Android Jetpack组件如何帮助开发者更高效地构建高质量的应用。此内容不仅适合经验丰富的开发者深化理解,也适合初学者构建起对Android高效开发的基础认识。
3 0
|
6天前
|
移动开发 Android开发 开发者
构建高效Android应用:采用Kotlin进行内存优化的策略
【4月更文挑战第18天】 在移动开发领域,性能优化一直是开发者关注的焦点。特别是对于Android应用而言,由于设备和版本的多样性,确保应用流畅运行且占用资源少是一大挑战。本文将探讨使用Kotlin语言开发Android应用时,如何通过内存优化来提升应用性能。我们将从减少不必要的对象创建、合理使用数据结构、避免内存泄漏等方面入手,提供实用的代码示例和最佳实践,帮助开发者构建更加高效的Android应用。
8 0