1
1
1
1
DiveIntoAndroid
DiveIntoAndroid
DiveIntoAndroid
DiveIntoAndroid
深入浅出 Android
Android
Android
Android
--Google
--Google
--Google
--Google 手持设备应用程式设计
2
2
2
2
DiveIntoAndroid
DiveIntoAndroid
DiveIntoAndroid
DiveIntoAndroid
深入浅出 Android
Android
Android
Android
--Google
--Google
--Google
--Google 手持设备应用程式设计
授权
本书采用创用 CC
: 「姓名标示
─ 非商业性 ─ 禁止改作」授权条款。
本书的文字、图片皆不欢迎转载,也不可使用于商业用途。但欢迎您将本书网址
http://code.google.com/p/androidbmi/wiki/IntroAndroid 分享到各网站。
作者
� gasolin , 项目发起人, 也是本书的主笔。 你可以写信至 gasolin+android -at- gmail.com 联
络作者。
作者的作品有 aTrackDog 软体更新通知程式。 在 Android Market 上架三天, 下载数即破 2
万。
近期写的 Anobiit 程式,让我也成为 zxing(Barcode scanner) 专案的 Contributor 。
致谢
�
Crota ,在项目初期提供建议等许多协助。
简介
「深入浅出 Android 手持设备应用程式设计」将以开发实例,讲解 Android
应用程式开发,
协助读者了解 Android 手持设备的应用程式设计。
回响
欢迎任何建设性的建议、批评、或者赞美。作者的电子邮件信箱是 gasolin+android -at-
gmail.com 。
想在简单易学和提供完整详尽的资讯之间取得平衡, 一直是种永恒的挣扎。 期望读者您能 提
供一些反馈,让作者能更好地掌握主题深入的程度。
3
3
3
3
目录
入门
1. 初探 Android
2. 安装 Android 开发工具
3. 开启现有专案
4. 操作 Android 模拟器 (Emulator)
5. 建立一个 Android 程式 (BMI0)
基础
1. 描述使用者介面
2. 设计使用者介面 (BMI01)
3. 存取识别符号
4. 解读程式流程 (BMI02)
5. 完成 BMI 程式
中阶
1. 重构程式 (BMI03)
2. 加入对话框 (Dialog)
3. 初见 Intent
4. 加入选单 (Menu)(BMI4)
5. 定义 Android 清单
6. 加入新 Activity(BMI5)
7. 传送资料到新 Activity(BMI6)
8. 记录与侦错 (Log)
9. 活动的生命周期
10. 储存资讯 (Preference)(BMI7)
11. 发布到 Android 市集 (Market)
12. 开发不息
附录
资源
1. Android 相关资源 ( 相关资源 )
2. 后续章节
3. 取得原始码
范例
gBMI :输入身高体重 ( 公制 ) ,计算出 BMI 值
4
4
4
4
IntroAndroid
IntroAndroid
IntroAndroid
IntroAndroid
初探 Android
2008
2008
2008
2008 年末最大的冲击
目前有 15 亿使用者可以透过电脑,在网路上看到 Google 广告。
若手机使用者也能上网,其潜在使用者则可以达到 30 亿。
2007 年 11 月 5 日, Google 与其他 33 家手机制造商 ( 包含摩托罗拉、宏达电、三星、 LG)
、
手机晶片供应商、软硬体供应商、电信业者所联合组成的开放手持装置联盟 (Open Handset
Alliance) ,发布了名为「 Android 」的开放手机软硬体平台。参与开放手持装置联盟的这些 厂
商,都会基于 Android 平台,来开发新的手机业务。
紧接着,在 Android 平台公布的一周之后 (11 月 12 日 ) , Google 随即发布了可以免费自由下
载,能在 Windows 、 Mac OS X 、 Linux 多平台上使用的 Android 软体开发工具 (Software
Development Kit, SDK) 与相关文件。间隔数天,又再次发布作业系统核心 (kernel) ,与部分 驱
动程式的原始码。一歩歩展示 Google 欲将手机这个现代人的随身工具推往开放平台,让人
们可以自由修改创作出符合自己需求的手机应用的决心。
身为 Google 公司创办人之一的 Sergey Brin ,也在 Android 软体开发工具 (SDK)
发布的同时,
现身于视讯广告影片中,为大众介绍 Android 平台。 Sergey Brin 也同时宣布举办总奖金高 达
1000 万美元 (3 亿多台币 ) 的开发者大奖赛, 鼓励程式开发者去深入探究 Android 平台的能力
。
写出具创意、实用性十足、能提供使用者更好的手机使用经验的应用程式。
2008 年 9 月 24 日, T-Mobile 首度公布第一台 Android 手机 (G1) 的细节,同日 Google 也释 出
了 Andorid SDK 1.0 rc1 。对应用程式开发者而言, 1.0 代表了开发者可以放心地使用 API
,
而不必再担心 API
有太大的变动。
G1 在同年 10 月 20 正式发售。 在发售前仅针对原
T-Mo
bile
用户的预购活动中,已经被预购了 150 万台。在 10/21 日, Open Handset Alliance 公开了全
部 Android 的原始码。从此,开发者拥有了一个完全开放的手机平台。
5
5
5
5
Android
Android
Android
Android 是什么
在可见的将来,基于 Android 平台的手机程式设计,将像今日的 PC 程式设计一样
普及。
「 Android 」是一个基于 Linux 核心 (kernel) 的开放手机平台作业系统。与 Windows Mobile
、
Symbian 等手机作业系统处在同一级别。
对于设备制造商来说, 「 Android
」是一个免费的平台。 「
Android 」作业系统让设备制造商 免
除「每出一台手机,就得被手机作业系统厂商 ( 如 MicroSoft) 收取费用」的情况。对硬体开 发
厂商来说, 「
Android 」也是个开放的平台。只要厂商有能力,可以在这个平台上自由加入 特
有的装置或功能,不受手机作业系统厂商的限制。
对于手持装置的开发者来说, 「 Android 」是个先进的平台。平台上的应用程式可相容于各 种
型号的 Android 手机,免去为各种不同手机机型开发的困扰。 「 Android 」平台支援各种先 进
的网路、绘图、 3D 处理能力,可以用来提供更好的使用者体验。
对于使用者来说, 「 Android 」是一个用于手机的作业系统。使用者只要先申请一个免费的
Google 帐户,当使用者想换一台手机时,就可以在不同厂牌,同样使用「 Android 」作业系
统平台的手机之间选择,并且很容易地将如联络簿等个人资料转换到新手机上。
Android 在 Linux 核心的基础上,提供了各种合用的函式库,和一个完整的应用程式框架。
并采用较符合商用限制的 Apache 版权。 在 Linux 核心的基础上提供 Google 自制的应用程 式
运行环境 ( 称作 Dalvik ,与 Sun 的 J2ME 不同 ) ,并提供基于 Eclipse 整合开发环境 (IDE) 的免
费、跨平台 (Windows
、
Mac OS X
、
Linux) 开发工具 (SDK) ,便于应用程式开发者学习、使
用。
免费、熟悉的跨平台开发工具,让具备一些物件导向观念,或视窗程式开发经验的开发者,
能在一定时间内上手。 1000 万美元的大奖赛则提供了足够的诱因,让第一支 Android 手机
正式面市前,就拥有了各式各样的应用程式可供使用。
从不同角度来说, Android 代表着
一个崭新的开放原始码作业系统平台、
一个友善的免费应用程式开发环境、
一个与世界各地的程式开发者,站在相同起跑点上的公平竞争机会。