基于Android的应用软件开发实例初探.doc
《基于Android的应用软件开发实例初探.doc》由会员分享,可在线阅读,更多相关《基于Android的应用软件开发实例初探.doc(24页珍藏版)》请在沃文网上搜索。
1、基于Android的应用软件开发实例初探指导教师:xxxxxx项目作者:xxxxxx2010 年 3 月 15日目录1.引言12.Android应用软件开发基础22.1 Android应用软件开发的语言22.1.1 Simple22.1.2 Scala22.1.3 Java22.2搭建开发环境22.2.1 计算机配置22.2.2 下载SDK初始包32.2.3 安装ADT32.2.4 设置Eclipse32.3 ADT的使用32.3.1 创建一个Android项目32.3.2 编译运行一个项目42.4 Android平台应用程序基础52.4.1概要52.4.2 Android应用程序组件52.4
2、.3 AndroidManifest.xml 文件73.音乐播放器实例73.1创建项目83.2 设计界面93.2.1准备图片93.2.2准备字符串资源103.2.3 设计程序的窗口布局113.3编写Java代码123.4 运行、调试程序153.5打包发布程序164.参考资料165.附录175.1 song_item.xml的代码175.2 songlist.xml的代码175.3 strings.xml文件代码185.4 AndroidManifest.xml文件代码185.5 MusicPlayer.java的代码181.引言Android系统是由Google在2007年发布的一个开源平台,
3、包括操作系统、中间件,以及一些关键应用。由于Android系统有开源、免费、易于移植的特点,以及Google等厂商的大力支持,Android在短短几年时间内得到了飞速发展。2008年HTC推出第一款Android系统机型Dream G1之后,各厂商都纷纷跟进,推广速度十分喜人。另外还有一些厂家利用Android易于移植的特性,开发了或正在开发基于Android系统的电子书阅读器、平板电脑、MP4、MID等智能终端。可以预见,Android的应用范围将越来越广,学习Android的开发也一定会有越来越大的用武之地。在该课程设计中,我通过学习Android的API,开发了一个简易的音乐播放器,实现
4、了最基本的功能。通过这一实例,我们也能从中一窥Android应用的开发流程。2.Android应用软件开发基础2.1 Android应用软件开发的语言2.1.1 SimpleSimple是Google于2009年7月推出的一种新的语言,其目的就是简化Android开发的难度,提供一种类似于Visual Basic的编程体验,在设计时就为Android的开发作了许多考虑。它的平台是完全开源的,但是目前Simple的资料较为贫乏,不便于学习。2.1.2 ScalaScala是一种特色鲜明的语言,它和Java一样运行于JVM之上,但是却同Java有许多设计理念上的区别。它提供一种类似函数式编程的方式
5、,同时也提供了对面向对象的支持,这也是一种新生的语言,应用范围正变得越来越广,在编写运行于多核处理器的程序时具有一定优势。之所以可以用Scala编写Android的应用程序,根本原因是Scala和Java编写的程序一样运行于JVM上。但是光这一点还不够,编写Scala程序所用到的Scala库得作一些改动,已经有人将可用于Android开发的Scala库制作好了,开发人员可以直接使用修改后的Scala库代替原先的Scala标准库。 我们用Scala编写的程序,实际上是先被Scala的编译器编译成了Java的class文件,然后再由Android dex编译器将Java class文件编译成And
6、roid设备里的JVM中可以运行的dex文件。2.1.3 JavaJava是Android上的主流开发语言,各种支持也最完善。Android发布的API和SDK也都主要是面向Java开发人员的。我们的播放器实例也是用Java开发的。2.2搭建开发环境2.2.1 计算机配置开发Android应用所用到的开发工具较占内存,尤其是模拟器。官方并未给出最低配置要求,根据个人实际体会,在本人Intel T2080双核及1G内存的情况,基本上能流畅使用。另外还需有600MB以上的剩余磁盘空间(官方文档中的说明)。2.2.2 下载SDK初始包初始包中有开发Android程序所要用到的工具,这些工具包括了从编
7、译到运行Android应用程序所需要的各种工具。因此,事实上最基本的开发环境至此就已经搭建完整。(SDK的下载地址为 ,本来官方网站为,但是经常被封锁,该链接更为稳定。)2.2.3 安装ADT按照2.2.2安装完SDK初始包后,就可以开始开发Android应用程序了,但是为了更高效地进行开发,Android团队推出了Android Development Tools (ADT) 。ADT是目前开发Android应用最有效的工具,它是一个Eclipse插件,支持Eclipse 3.4及3.4以上的版本。以Eclipse 3.5 (Galileo)为例,安装过程如下:1. 打开Eclipse,选择
8、 Help Install New Softare。2. 在Available Software 对话框中,点击Add.。3. 在弹出的Add Site 对话框中,任意填写一个名字到Name一栏。在Location一栏,则填入这一URL:“https:/dl-4. 返回到Available Software 窗口后,就能看到列表中出现了Developer Tools ,选中它前面的复选框,再点击“Next”,就会开始下载安装ADT的各种组件了。5. 安装完毕后将弹出窗口显示ADT相关的各种信息以及许可协议,点击“Finish“即可完成安装。6. 重新启动Eclipse。2.2.4 设置Ecli
9、pse1. 选择Window Preferences. 打开偏好设置2. 从左侧边栏中选择Android一栏。3. 单击SDK Location一栏边的Browse按钮,选择刚刚下载的SDK保存的路径。4. 点击Apply,OK,设置生效。至此,Android的开发环境就已经搭建完毕,可以使用了 。2.3 ADT的使用2.3.1 创建一个Android项目1. 选择 File New Project 2. 点击Android Android Project ,然后点击Next 3. 在弹出的对话框内,依照提示,输入必要的内容:1) 输入Project Name ,整个项目的代码将自动保存在以名
10、字命名的文件夹下。2) 在Contents选项中,选定 Create new project in workspace 以及项目保存的位置。3) 在Target选项中,从列出的Android目标平台中选择一个或多个。编译时将会编译成所选目标平台上的程序。4) 在Properties选项中,填写必要的内容:a)在Application name 处输入应用的名称。该名称将会作为标题显示在手机中。b)在Package name 处输入包的名称c)选择是否需要创建一个Activity(关于Activity的概念将在后面的章节中讲述)。大多数应用程序都需要有至少一个Activity。如果选择了创建,那
11、么就还需要填写主Activity的名称。d) 输入Min SDK Version ,ADT会把该设置写入Manifest.xml文件中(下文将介绍该文件的作用)。这一选项是用于判断该应用程序是否能兼容于某版本的Android系统。由于推出时间不久,Android的更新速度十分快,现已发布了1.0,1.1, 1.5, 1.6, 2.0, 2.0.1, 2.1这几个版本。市面上现有的大部分Android终端都是基于1.5(API Level 为3)以后的版本,少数最新款的设备使用了2.0以后的版本。因此,如果没有使用特殊的API,我们把此处设为3即可保证良好的兼容性。4.点击Finish,完成设置
12、。创建完成后,我们即可在方才设置的工作目录中找到项目文件。ADT会为我们创建以下目录及文件:src/ 该目录下保存我们所编写的Java代码文件。/ 该目录下是我们所设置的目标Android版本所对应的android.jargen/ 该目录下保存的是由ADT根据我们的界面设置、资源设置等自动生成的代码assets/ 初始为空,可以用来存放assets文件res/ 保存程序要用到的资源,如窗口布局、字符串值等AndroidManifest.xml 用于描述应用程序的文件,Android会读取该文件,用以确定应用程序所需要的权限等信息。default.properties 用于保存该项目的信息,比如
13、各项设置,该文件也由ADT管理,不需要手动编辑。2.3.2 编译运行一个项目为了节省时间,我们大多数的测试都是在模拟器上运行,最后才在真实的硬件上运行程序。Android的SDK中提供有模拟器程序,要让模拟器运行起来,我们则还需要创建称为AVD(Android Vitual Device)的配置文件。SDK中的命令行工具可以用来创建AVD,安装ADT之后我们也可以更直观地用图形界面创建。1. 创建AVD1) 选择Window Android SDK and AVD Manager ,打开AVD管理器2) 在弹出的窗口中会列出已经创建的AVD,我们点击创建一个新的AVD3) 填写所需的选项。包括
14、AVD名称,是否需要SD,虚拟屏幕的分辨率等。4) 单击Create AVD ,创建完毕。5) 运行程序运行(或调试程序)可以通过点击主菜单上的Run Run (或 Run Debug) ,ADT会为我们启动模拟器,并在模拟器中运行或调试我们的程序。在这个过程中,实际上Eclipse为我们完成了以下工作:1) 如果项目中的文件有改动,就重新编译一次。2) 如果没有设置启动选项,就创建之。3) 如果模拟器还没有启动,就运行模拟器。4) 通过Socket向模拟器发送编译过后的程序。5) 向模拟器发送命令安装并启动该应用。6) 如果是以调试方式运行,则应用程序启动后会等待调试器挂接,同时Eclips
15、e会切换到调试视图。2. 配置运行选项在编写应用程序的过程中,我们有时候需要调整运行设置,比如运行不同的AVD,启动应用程序的某个特定Activity。这时,我们可以按以下步骤设置:1) 打开 Run Open Run Dialog ,弹出设置窗口2) 展开Android Application 节点,点击项目名称,右侧即会显示出相应的配置选项卡。3) 在Android, Target,Common三个选项卡中,根据需要,修改设置。4) 点击Run,即会根据新的设置运行。3. 为应用程序签名出于安全的考虑,所有的Android应用程序都必须有数字签名,Android系统才会允许安装该程序。在开
16、发程序时,我们可以使用调试密钥(debug key),带有这种密钥的应用程序可以在模拟器或是在我们开发用的设备上安装。如果要正式发布应用程序,则还需要取得正式的私钥。在实例开发一节中,讲详细介绍如何为应用程序打上数字签名。2.4 Android平台应用程序基础2.4.1概要Android 应用程序编写完成后,都是由aapt工具(ADT 会自动调用该工具)打包成apk文件,一个apk文件就是一个完整的应用程序,它包含了编译好了的程序以及各种资源、描述性文件(如Manifest.xml)。在运行时,每个Android应用程序具有如下特点:1. 默认情况下,每个应用程序都运行在一个Linux进程中。
17、当应用程序中的某部分代码需要得到执行时,Android会为这个应用程序启动一个进程,该进程会一直存在,直到代码中要求退出,或者系统资源不足时Android将其杀死。2. 每个进程都运行于一个相互独立的JVM。3. 默认情况下,每个应用程序都会被赋予一个唯一的Linux user ID。结合Linux的权限设置,就可以保证只有该应用程序可以访问属于它的文件。4. 某些特殊情况下,我们可以让两个应用程序共用一个Linux user ID,这时,应用程序的文件相互之间都是可以访问的。为了节约系统资源,Android会自动把这两个应用程序合并到一个进程中,共享一个JVM。2.4.2 Android应用
18、程序组件Android应用程序最大的一个特点就是每个应用都由若干组件构成。而且各个应用程序的组件还可以相互调用(需要在代码中设置相应权限)。例如假设我们需要编写一个内嵌有网页的程序,那么我们无需亲自编写浏览器,而是可以直接调用系统自带的Chrome Lite浏览器组件。又如假设我们编写了两个应用程序,其中一个程序中有列表显示图片的组件,那么我们在另外一个应用程序中就可以使用该组件,而不需要再编写该功能。也就是说,不同于我们平常编写的程序,Android的应用程序不是单一入口,而是可以从代码的不同位置启动。这就要依靠组件来实现。Android应用程序的组件有以下四种:1. Activities
19、一个activity实际上表现出来的就是一个程序的界面。这个界面可能有许多种不同的形式,比如有列表形式,有文字形式,有图像格子等形式。一个应用程序也可能有不止一个activity。比如一个短消息的程序,需要有列表显示所有消息的activity,还至少需要一个编辑短消息的activity(界面),还可能需要设置、菜单等界面。每个activity都有一个默认的窗口用于绘制界面,一般情况下,它是充满全屏的,但是我们可以通过程序控制它,使其小于屏幕大小,也可以控制其浮动于其它窗口之上(如Android中的Toast信息),Activity中显示出来的内容其实是由view堆叠形成的,view是由View
20、基类派生出来的各种形式的界面元素,如ListView,GridView等等,通过组合这些view,就形成了一个可见的activity。我们可以用Activity.setContentView()方法来设置一个activity中所要显示的view。2. Services service是一种没有界面的组件,同我们平常在Windows或Linux系统中所理解的“服务”一样,Android上的service也是运行在后台的,运行时间可以从系统启动到系统关闭为止。对于许多应用程序来说,service组件是至关重要的。以下载管理器为例,用户肯定希望能够在切换到其它程序时仍然在后台进行下载,这就需要用到s
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
10 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Android 应用软件 开发 实例 初探