欢迎进入神秘的Android世界!自2008年相关设备进入市场以来,Android的发展日新月异,Android设备日益繁盛,而其背后开发应用潜藏的经济效益也展露无遗!
本书将引领大家开发引人入胜的Android 2.x应用,包括如何设计GUI、如何使用GPS和访问Web服务,以及如何将理念转换成实际应用! 本书包含大量即时可用的简单示例,自此之后,构建实际、流行的应用将不再困难,只要你投入时间,发挥出创造力。
通读本书,你将了解以下内容:
应用Android为各种手机和设备构建基于Java的移动应用
同时使用Android部件框架和内置的WebKit驱动的Web浏览器组件创建UI
使用Android引擎特性,包括位置跟踪、地图、因特网访问
使用和创建整合了活动、服务、内容提供程序和广播接收器的Android应用
支持Android 1.5、1.6和2.0 设备,包括处理多个版本的Android OS、多种屏幕尺寸和其他特定于设备的特性
第1章 Android开发概述 1
1.1 智能手机编程的挑战 1
1.2 Android由哪些部分构成 2
1.3 你能够控制什么 3
第2章 项目和目标 4
2.1 基本概念 4
2.2 创建项目 5
2.3 项目结构 5
2.3.1 根目录 5
2.3.2 主Activity 6
2.3.3 资源 6
2.3.4 编译结果 7
2.4 AndroidManifest.xml文件 7
2.4.1 一开始是根元素 8
2.4.2 权限、编排和应用程序 8
2.4.3 应用程序总要做点什么 9
2.4.4 确保最大兼容性 10
2.4.5 版本=控制 10
2.5 模拟器和目标 11
2.5.1 虚拟设备 11
2.5.2 设定目标 13
第3章 简单的应用程序 14
3.1 创建项目 14
3.2 剖析Activity 15
3.3 构建和运行Activity 17
第4章 基于XML的布局 18
4.1 何谓基于XML的布局 18
4.2 为什么使用基于XML的布局 18
4.3 举个例子 19
4.4 什么时候加@符号 20
4.5 怎样在Java中使用布局文件 20
4.6 把故事讲完 20
第5章 使用基本的部件 22
5.1 标签 22
5.2 按钮 23
5.3 图像 23
5.4 字段 24
5.5 复选框 25
5.6 单选按钮 27
5.7 视图 28
5.7.1 特性 28
5.7.2 方法 29
5.7.3 颜色 29
第6章 使用容器 30
6.1 线性布局 30
6.1.1 LinearLayout的概念和特性 30
6.1.2 LinearLayout示例 33
6.2 相对布局 36
6.2.1 RelativeLayout的概念和属性 36
6.2.2 RelativeLayout示例 37
6.3 表格布局 40
6.3.1 TableLayout的概念和特性 40
6.3.2 TableLayout示例 42
6.4 滚动 42
第7章 使用选择部件 45
7.1 适配器 45
7.2 列表 46
7.3 微调控件 49
7.4 网格 51
7.5 自动完成字段(至少减少35%的输入) 53
7.6 画廊 55
第8章 使用列表 57
8.1 初步改进 57
8.2 动态列表 58
8.3 更好,更快,更强 60
8.3.1 使用convertView 61
8.3.2 使用持有者模式 62
8.4 交互式列表 64
8.5 可重用列表 68
8.6 选用其他适配器 74
第9章 高级部件和容器 75
9.1 选择日期和时间 75
9.2 时钟 78
9.3 进度条 79
9.4 滑动选择 79
9.5 选项卡 80
9.5.1 构建 80
9.5.2 规则 80
9.5.3 使用 81
9.5.4 增强 83
9.5.5 Intent和View 84
9.6 翻转 85
9.6.1 手工翻转 86
9.6.2 动态添加内容 87
9.6.3 自动翻转 88
9.7 滑动的抽屉 89
9.8 其他容器 91
第10章 输入法框架 92
10.1 键盘,硬还是软 92
10.2 按需定制 92
10.3 修改附属键 95
10.4 适应布局 96
10.5 释放创造力 97
第11章 使用菜单 98
11.1 选项菜单 98
11.1.1 创建选项菜单 98
11.1.2 添加菜单项和子菜单 99
11.2 上下文菜单 100
11.3 简单的示例 100
11.4 扩展的示例 104
11.4.1 菜单的XML结构 104
11.4.2 菜单项与XML 105
11.4.3 创建菜单 106
第12章 字体 107
12.1 珍惜已有字体 107
12.2 更多字体 108
12.3 字形介绍 109
第13章 嵌入WebKit浏览器 111
13.1 小型浏览器 111
13.2 加载内容 112
13.3 导航内容 113
13.4 扩展应用程序 114
13.5 设置、首选项和选项 115
第14章 显示弹出消息 116
14.1 弹出Toast 116
14.2 提醒框 117
14.3 检查效果 117
第15章 处理线程 120
15.1 了解处理程序 120
15.1.1 消息 120
15.1.2 Runnable 123
15.2 就地运行 123
15.3 我的UI线程到哪去了 123
15.4 异步观感 123
15.4.1 原理 124
15.4.2 AsyncTask、泛型和Vararg 124
15.4.3 AsyncTask的各个阶段 125
15.4.4 示例任务 125
15.5 附加说明 129
第16章 处理Activity生命周期事件 130
16.1 Activity的状态 130
16.2 Activity的生命周期 131
16.2.1 onCreate()和
onDestroy() 131
16.2.2 onStart()、onRestart()和onStop() 131
16.2.3 onPause()和onResume() 131
16.3 优美的状态 132
第17章 创建Intent过滤器 133
17.1 你有什么意图 133
17.1.1 Intent组成 133
17.1.2 Intent路由 134
17.2 叙述Intent 135
17.3 缩小接收器范围 136
17.4 暂停警告 137
第18章 启动活动和子活动 138
18.1 对等活动和子活动 138
18.2 启动 139
18.2.1 制作Intent 139
18.2.2 进行调用 139
18.3 多标签浏览 142
第19章 处理旋转 145
19.1 销毁问题 145
19.2 异同 145
19.3 更多保存 149
19.4 DIY旋转 151
19.5 强制解决问题 152
19.6 综述 154
第20章 处理资源 156
20.1 资源 156
20.2 字符串理论 156
20.2.1 纯文本字符串 157
20.2.2 字符串格式 157
20.2.3 样式文本 157
20.2.4 样式字符串格式 158
20.3 获取图片 160
20.4 XML:资源之路 162
20.5 杂项 164
20.5.1 维度 164
20.5.2 颜色 165
20.5.3 数组 165
20.5.4 因人而异 166
第21章 使用首选项 171
21.1 获取想要的内容 171
21.2 编辑首选项 172
21.3 目前的框架 172
21.4 让用户自己选择 173
21.5 添加“分层”结构 176
21.6 弹出对话框 177
第22章 管理和访问本地数据库 180
22.1 数据库示例 180
22.2 SQLite快速入门 181
22.3 从头开始 182
22.4 设置表 184
22.5 数据 184
22.6 有因必有果 185
22.6.1 Raw查询 186
22.6.2 常规查询 186
22.6.3 使用构造器进行构建 186
22.6.4 使用Cursor 187
22.7 无所不在的数据 188
第23章 访问文件 190
23.1 使用的数据 190
23.2 读取与写入 192
第24章 充分利用Java库 196
24.1 外部限制 196
24.2 Ant和JAR 197
24.3 参照脚本 197
24.4 滴酒不沾 200
24.5 评审脚本 200
第25章 通过Internet进行通信 201
25.1 REST和Relaxation 201
25.2 通过Apache HttpClient操作HTTP 201
25.3 解析响应 203
25.4 要考虑的问题 205
第26章 使用内容提供程序 206
26.1 数据片段 206
26.2 获得句柄 207
26.3 查询 207
26.4 适应环境 208
26.5 舍与得 209
26.6 感知BLOB 210
第27章 构建内容提供程序 211
27.1 剖析 211
27.2 类型 212
27.3 创建内容提供程序 212
27.3.1 第一步:创建提供程序类 212
27.3.2 第二步:提供URI 217
27.3.3 第三步:声明属性 218
27.3.4 第四步:更新清单文件 218
27.4 更改通知支持 219
第28章 请求和要求许可 220
28.1 请求许可 220
28.2 声明许可 221
28.2.1 通过清单文件强制实施
许可 222
28.2.2 在其他地方强制实施许可 222
28.3 别忘了文档 223
第29章 创建服务 224
29.1 通过类创建服务 224
29.2 单例 225
29.3 清单文件的作用 226
29.4 事件提醒 227
29.4.1 回调 227
29.4.2 广播Intent 228
29.5 远程服务与其他代码 229
第30章 调用服务 230
30.1 联系的纽带 230
30.2 接收广播内容 232
第31章 利用通知提醒用户 234
31.1 发布通知的类型 234
31.1.1 硬件通知 235
31.1.2 图标 235
31.2 查看运行中的通知发布 235
第32章 访问基于位置的服务 238
32.1 位置提供程序:它们知道你藏在哪里 238
32.2 自我定位 239
32.3 移动 240
32.4 我们到了吗 241
32.5 测试 241
第33章 使用MapView和MapActivity显示地图 242
33.1 条款无情 242
33.2 添加项问题 242
33.3 基本要素 243
33.4 练习控制 244
33.4.1 缩放 244
33.4.2 居中 245
33.5 地形起伏 245
33.6 层上加层 245
33.6.1 Overlay类 246
33.6.2 绘制ItemizedOverlay 246
33.6.3 处理屏幕单击 247
33.7 MyLocationOverlay 248
33.8 关键所在 249
第34章 呼叫处理 250
34.1 向管理者报告 250
34.2 亲自进行呼叫 250
第35章 开发工具 253
35.1 层次结构管理 253
35.2 令人愉快的Dalvik调试详细演示 257
35.2.1 日志记录 259
35.2.2 文件推拉 259
35.2.3 屏幕截图 260
35.2.4 位置更新 260
35.2.5 接入呼叫和消息 261
35.3 存储卡 262
35.3.1 创建卡的映像 262
35.3.2 插入卡 263
第36章 处理多种屏幕尺寸 264
36.1 默认设置 264
36.2 多合一 265
36.2.1 考虑规则,而不是位置 265
36.2.2 考虑物理尺寸 266
36.2.3 避免使用实际像素 266
36.2.4 选择可缩放的Drawable 266
36.3 量身定制 267
36.3.1 添加
36.3.2 资源和资源集 268
36.3.3 查找尺寸 268
36.4 一切都是模拟的 269
36.4.1 密度不同 269
36.4.2 调整密度 270
36.4.3 访问实际设备 270
36.5 充分利用形势 271
36.5.1 用按钮代替菜单 271
36.5.2 使用简单的Activity代替选项卡 271
36.5.3 整合多个Activity 272
36.6 示例:EU4You 272
36.6.1 第一个版本 272
36.6.2 固定字体大小 277
36.6.3 固定大小的图标 278
36.6.4 使用空间 278
36.6.5 不是浏览器会怎样 279
36.7 合作伙伴的错误有哪些 280
第37章 手机的处理 281
37.1 该应用程序包含显式指令 281
37.2 按钮 282
37.3 有保障的市场 282
37.4 细枝末节 283
37.4.1 Archos 5 Android Internet Tablet 283
37.4.2 Motorola CLIQ/DEXT 284
37.4.3 Motorola DROID/Milestone 284
37.4.4 Google/HTC Nexus One 284
37.4.5 Motorola BACKFLIP 284
第38章 处理平台变更 285
38.1 品牌管理 285
38.2 让人头疼的更多问题 286
38.2.1 视图层次结构 286
38.2.2 变更资源 287
38.3 处理API变更 287
38.3.1 检测版本 287
38.3.2 包装API 287
第39章 未来何去何从 292
39.1 问题——部分答案 292
39.2 源代码 292
39.3 获得最新的信息 293
批处理在提高WINDOWS管理效率中的神奇应用 本书特色 本书作者结合多年的理论与实践知识,针对于系统管理员和网络管理员精心策划了这本书。本书将dos命令与批处...
《小顾聊印象派》内容简介:改变时代的人,皆由时代造就。整个时代都在变,艺术怎能一成不变? 1874年,一个名叫莫奈的家伙登高一呼
《信号与系统辅导与题解(与美国MIT麻省理工本科教材配套)》是奥本海姆教授主编的、电子工业出版社引进出版的《信号与系统》(第2
《多模态警示语的整体意义建构》内容简介:《多模态警示语的整体意义建构》为“当代外语研究论丛”之一,主要运用巴赫金的对话理论
Photoshop建筑表现图专业技法与范例-附光盘 本书特色 《Photoshop建筑表现图专业技法与范例》:超值多媒体光盘12段多媒体全程配音教学视频30个建...
深入浅出玩转FPGA-第2版-含光盘 本书特色 《深入浅出玩转fpga(第2版)》收集整理了作者在fpga学习和实践中的经验点滴。书中既有日常的学习笔...
《德米安:埃米尔·辛克莱年少时的故事》内容简介:《德米安》是德国作家赫尔曼·黑塞于1919年创作的中篇小说。读者将伴随少年埃米
飞行研究是飞机设计过程中一个不可缺少和不可分割的部分,人们研制了许多种型号的飞机来试验各种新的设计,演示一些特别的新技术
小天才学Python 本书特色 这是一本专门给小学生和中学生学习的编程书。编程对于培养孩子的逻辑思维能力和动手能力至关重要,国家正在推动将编程纳入到中小学教学和...
文本挖掘技术及其应用 本书特色 《文本挖掘技术及其应用》包括四个部分。**部分包括两章,介绍常用文本挖掘技术,总结基本流程。第二部分共五章,在r软件上...
《微信营销与运营攻略》内容简介:《微信营销与运营攻略》由国内微信营销与运营领域的3位领军人物撰写,旨在为企业微信营销与运营提
《跨终端Web》内容简介:移动互联网不可阻挡地进入了我们的生活。作者将自己在百度和天猫期间的跨终端Web的开发实践转化为书中的技
网络公关 本书特色 在中国公共关系走过二十年的历程后,我非常高兴地看到首套公共关系译丛的出版。此套丛书汲取了国际上先进的公共关系理论和案例研究,堪为经典公共关系...
《AI游戏引擎程序设计》为游戏开发人员创建现代游戏的AI引擎提供了工具和必要的指导。带领读者从理论入实际的游戏开发,并给出可
3ds MAX三维效果图制作案例教程 内容简介 本书是一本面向3DS MAX效果图制作初学者的书,本书根据3ds Max 9软件和效果图制作的特点,,由优秀效果...
《民事诉讼程序研究》共分为诉讼程式;扩散利益、分散利益和集体利益的保护;程式样式;当事人与法官;对判決的救济;程式改革。
TheIMS:IPMultimediaConceptsandServicesintheMobileDomain,SecondEdition,buildsonth...
FloTHERM软件基础与应用实例 本书特色 李波编写的《flotherm软件基础与应用实例》分为软件基础入门与应用实例两大部分,共12章:第1~9章为软件基础...
计算机:一部历史 本书特色 《计算机——一部历史》(彼得·本特利著), 给大众读者写的计算机科普读物,零门槛入门计算机 科学。讲述计算机背后鲜为人知的故事,普及...
软件测试方法与技术实践指南ASP.NET版 内容简介 本书以实际项目为原型、关键的理论与丰富的实践为指导,贯彻了先进的项目管理理念与全程质量管理思想。通过asp...