【Android源码 栏目提醒】:网学会员为广大网友收集整理了,基于 Android的移动终端应用程序开发与研究 - 开发文档,希望对大家有所帮助!
计 算 机 与 现 代 化 2008 年第 8 期 J ISUANJ I YU X I NDA IHUA A 总第 156 期文章编号 : 1006 22475 2008 08 20085 205 基于
Android的移动终端应用程序开发与研究 磊 公 周 聪 南昌大学信息工程学院 江西 南昌 330031 摘要 : 主要介绍了 Google新近推出的移动设备软件平台
Android以及基于此平台的移动终端应用程序开发 。
关键词 : 移动设备
Android 应用程序 中图分类号 : TP311 文献标识码 : A D evelopm en t and Research of M ob ile Term ina tion Applica tion Ba sed on Andro id GONG Lei ZHOU Cong Information Engineering School of Nanchang University Nanchang 330031 China Abstract: The p rim ary coverage is the Mobile equipment soft are p latform of Google named
Android and the development of Mo2 w bile term ination app lication based on
Android1 Key words:Mobile equipment
Android app lication 20 引 言 1 Andro id 软件平台的构成 经过多年的发展 第三代数字通信 3G 技术获
Android 软件平台主要由五部分构成 它们分别 1得了广泛的接受 它为移动终端用户带来了更快 是 : 关键应用程序 、应用程序框架和组件 、 /C 函 C的数据传输速率 。
随着 3G网络的使用 移动终端不 数库 、 程序运行环境 、 Java 优化了的 L inux内核 。
再仅是通讯网络的终端 还将成为互联网的终端 。
因 1. 关键应用程序 。
此 移动终端的应用软件和需要的服务将会有很大的
Android 平台内包含一些关键应用程序 如邮件发展空间 。
Google 为此于 2007 年 11 月推出了一个 收发客户端程序 、 短信收发程序 、 日历 、 网页浏览器专为移动设备设计的软件平台 ——
Android。
— 等 而更多有特色的
Android 应用程序还有待于广大
Android是一套真正意义上的开放性移动设备综 开发者共同参与开发 。
合平台 它包括操作系统 、中间件和一些关键的平台 2. 应用程序框架及组件 。
应用 。
Android最大特点在于它是一个开放的体系架
Android 应 用 程 序 开 发 基 于 框 架 和 组 件 。
An2构 具有非常好的开发和调试环境 而且还支持各种 droid 本身已在其框架中提供了许多组件供应用程序可扩展的用户体验
Android 里面具有非常丰富的图 调用 开发者也可在开发应用程序时顺带开发新的组形系统 对 多 媒 体 的 支 持 功 能 和 非 常 强 大 的 浏 览 件 并将该组件放入应用程序框架中 以供自己和其 3器 。
它应用程序调用 。
Android 平台的开放性等特点既能促进技术 包 3. C /C 函数库 。
括平台自身 的创新 又有助于降低开发成本 还可
Android 应用程序框架之下是一套 C /C 函数以使运营商能非常方便地制定特色化的产品 因此 库 它们服务于
Android 应用程序组件 其功能通过它具有很大的市场发展潜力 。
组件间接提供给开发者 。
这些函数库包括 : 标准 C 媒体功能库 、 函数库 、 浏览器引擎 、 和 3D 图形库及 2D 收稿日期 : 2008 2 2 03 17 作者简介 : 公磊 1984 2 男 江西南昌人 南昌大学计算机应用专业硕士研究生 研究方向 : 嵌入式系统 周聪 1962 2 男 副 教授 研究方向 : 嵌入式系统 。
86 算 机 与 现 代 化 计 2008 年第 8 期SQL ite 引擎等 。
gt Preferences 打开参数设置面板 选择
Android 选 4. Java程序运行环境 。
项 在 SDK 路径中填入
Android 的安装路径 单 击
Android 的 Java 程序运行环境包含一组 Java 核 App ly和 ok完成参数设置 。
至此 就能在 Eclip se 环心函数库及 Dalvik 虚拟机 它们有效地优化了 Java 境下进行
Android应用的开发了 。
程序的运行过程 。
2. 2 Andro id应用程序组件的使用 5. L inux内核 。
Android 应用程序以各种组件 AP I 为基础 AP I
Android 系统平台基于优化了的 L inux 内核 它 是
Android软件平台的重要组成部分 也是开发 An2提供诸如内存管理 、 设备驱动等服务 同时 进程管理 、 droid 应用的关键所在 。
下面介绍 几种 主要 的 An2也是手机软硬件的连接层 。
。
droid AP I2 Andro id 开发平台的配置和程序开 1当前活动程序 Activity:作为最常用的应用程序 发的基本组件 组件 几乎所有 Activity都会通过创建 U I窗口与用户进 暂停、 行交流。
Activity具有生命周期 它包含运行、 停止
Android 平台为开发者提供了
源码开放的软件开 等几个状态 状态间的转换可通过调用 onCreate 、 2 on发包 SDK 它包含了使用 Java 语言开发
Android 平 Start 、onRestart 、onResume 、onFreeze 、onPause台应用的必要工具和组件 AP I 。
进行开发前先要 、onStop 、onDestory 等方法来实现。
要开启新的建立合适的开发环境 其中基于 Java 的整合型可扩 activity可以调用 start ctivity Intent 或调用 startSub2 A展平台 Eclip se 是我们的首选 。
5 Activity Intent int 后者通常和 onActivityResult int2. 1 搭建 Eclipse开发环境 int StringBundle联合使用 以从一个 activity获取某结 Eclip se 的运行建立在 JRE 之上 因此必须先安 果并返回给打开它的 activity。
装 JRE。
可以从 http: / / java. sun. com 下载 JDK5 或 2 图像显示 V iew: V iew 是最基本的 U I构件 它JDK6然后按提示进行 JDK的安装 安装完成后 再 图像等 在屏幕中占据一个矩形区域可用来显示文本 、配置环境变量 : 如在 W indow s XP 或 W indow s 2000 的 内容 还可完成图像事件处理 。
常用的 V iew 方法有 :操作系统中 可右键单击“ 我的电脑 ”然后依次选择 inflate 由 XML 文件生成 V iew 、 raw Canvas onD“ “ 属性 ” 高级 ”“ 环境变量 ”在弹出的窗口的“ 系 对 V iew 进行填充 、 easure int int 测量 V iew onM统变量 ”中找到“Path ” 环境变量 点击“ 按钮 编辑 ” 的高度和宽度 、onLayout 完成 V iew 的布局 、 2 on在弹出的对话框中的“ 变量值 ”一栏输入 JDK的安装 KeyDown int KeyEvent V iew 中有按键操作时被调路径即可 最后用同样的方法设置环境变量“C lass2 用 、onFocusChanged boolean int 当 V iew 得到或失path ”至此便完成了 JDK的安装 。
有了 Java运行环境 就可以下载 Eclip se ZIP 包 去关注时被调用 、 O nClilckL istener 设置 V iew set解压后就能直接运行 Eclip se. exe。
点击事件监听器 。
V iew 也包含一些子类 如 : Text2 在 Eclip se中安装一个名为 ADT的
Android 开发 V iew 布局文件中的文本显示 、EditText 布局文件工具插件 就可以使用 SDK 进行
Android 应用开发 。
中的文本编辑 、 utton 按钮 、 istV iew 显示列表 。
B LADT安装步骤 :在 Eclip se中依次选择 Help gt Software 3 事件 Intent: Intent抽象描述了想要执行的某Updates gt Find and Install 在弹出的对话框中选择 种操作 它与 startA ctivity一起使用可以开启新的 ac2Search for new features to install并点击 Next选择 New tivity与 startService 一 起 使 用 可 以 开 启 后 台 服 务 。
Remote Site 在 结 果 对 话 框 中 为 远 端 站 点 命 名 如 Intent最重要的作用还是加载 activity它是不同 activ2ADT 并 在 URL 栏 中 输 入 http s: / / dl - ssl google. . ity间的桥梁 。
Intent也可以被认为是一种概括操作com /
android / eclip se / 点击 ok 随后 ADT 站点被添加 行为的数据结构 它主要包括 action 动作 和 data到搜寻列表中 再点击 Finish即可 在搜索结果对话框 数据 两部分 此外它还具有一些附加属性如 cate2中选择 ADT gt Eclip se Integration gt
Android Develop 2 gory intent种类 、 数据类型 等 。
常用的 Intent typement Tools单击 Next 接受协议 点击 Next和 Finish 方法有 intent 构造 intent 、addcategory 添加 in2选择 Install A ll并重启 Eclip se ADT安装完成 。
tent类型 、 A ction 获取 intent动作 、 D ata get get ADT安装完毕后 还要配置 Eclip se 参数 使其指 获取 intent数据 等 。
向 SDK根目录 过程如下 : 在 Eclip se 中选择 W indow 4 数据存取与共享机制 ContentProvider: Cont2 2008 年第 8 期 公磊等 : 基于
Android的移动终端应用程序开发与研究 87entProvider可实现应用程序的数据存取及不同应用 唯一的字符串标识 U ri来指明自身存储的数据类型 。
程序间的数据共享 。
ContentProvider为应用程序提供 ContactnoteProvider的 U ri可以这样定义 : public static一些访问方法 包括 : Query U ri String String final U ri CONTENT _UR I U ri parse quot content: / / .String String String String 数据信息的查询 com. google. p rovider Contactnote / contactnotesquot 。
. insert U ri Contentvalues 在 Contentp rovider 中添加 ContentProvider可使用文件存储方式或 SQL ite2新数据 updata U ri Contentvalues String String Database来存储数据 。
本文选用了 SQL iteDatabase 并更新 Conntp rovider 中的数据 delect U ri String 借助基于 SQL ite 的类 SQL iteOpenHelper来构建电话String 删 除数据 Gettype U ri 获 取 数 据 类 簿存储系统 :型 。
其中 U ri标明了 ContentProvider存储的数据类 p rivate static class DatabaseHelper extends SQL iteOpenHelp 2型 在执行访问方法时都需依据 U ri作为路径标识来 er 确定要访问哪个 ContentProvider。
public void onCreate SQL iteDatabase db db. execSQL quot CREATE TABLE contactnotes _ id I TE2 N 5 后台服务 Service: Service 是运行在后台的应 GER PR I ARY KEY quot quot peop lename TEXT quot quot phonen2 M用程序组件 不直接与用户交互 。
当前活动程序可以 umber TEXT quot quotmodified I TEGER quot quot quot N使用 Context StartService 开启一项后台服务 还可 . / /创建基于 SQL iteDatabase 的电话簿数据表格 phonen2以通过 Context bindService 与后台服务通信 。
. umbers3 Andro id 应用程序开发例程
Android 平台内置了一套 SQL ite 数据存储机制 并包含了一系列管理 SQL ite Database的相关方法 如 电话薄是一项必不可少的手机终端应用 本文以 打开数据库以及执行 SQL 命令等 应用程序可 创建 、此为例来说明基于
Android 应用程序开发的基本过 直接使 用 这 些 方 法 来 构 建 私 有 存 储 系 统 在 创 建程。
ContentProvider时也可以借用这些方法 。
上面的代码3. 1 项目的创建 中 ContactnoteProvider 就 使 用 了 基 于 SQ lite 的 ex2 首先 在 Eclip se 中依次选择 File gtNew gtAndroid ecSQL 方法来构建电话簿的数据存储系统 。
本文 对Project 在 弹 出 的“New
Android Project ” 话 框 的 之所以使用 ContentProvider来存储数据是因为只有Contents部分选择 C reate new p roject in workspace 在 它能实现数据共享 而其他存储系统的访问仅限于单“Project name ”后输入工程名 Contactnote在“Package 个应用之内 。
后输入 com. google.
android. contactnote在“Ac2name ” ContactnoteProvider实现数据共享的前提是能被 后输入 Contactlist 在“App lication nam e ”tivity nam e ” 所有应用程序访问 因此它提供了一些公开的访问接后输入 Contact 最后点击 Finish 完成电话簿项目的 口 应用程序调用这些访问接口时用 U ri标识确定访创建 。
.