种豆资源网

当前位置:首页 > 百科 > 百科综合 / 正文

Android套用开发详解

(2020-01-09 08:09:42) 百科综合
Android套用开发详解

Android套用开发详解

《Android套用开发详解》的作者是郭宏志 ,于2010年6月出版。该书分为三个部分,共18章,由浅入深地详细介绍了Android的每个开发细节。 该书基础翔实,实例丰富,案例真实。

基本介绍

  • 书名:Android套用开发详解
  • 作者:郭宏志 
  • ISBN:978-7-121-10875-4 
  • 页数:508 页
  • 定价:59.80元(含CD光碟1张)
  • 出版时间:2010年6月
  • 开本:16开

编辑推荐

案例真实,拿来就用
覆盖全面,从入门到精通
鱼我所欲也,渔亦我所欲也。这是一本鱼渔兼得的好书。

内容简介

Android套用开发详解是一本Android套用开发书籍,既适合Android初学者,也适合具备了一定Android开发经验但需要开发案例的高级读者。 从基础到案例覆盖了Android套用开发的三大领域:基础套用、网路套用和游戏套用。读者所需要学习的,正是该书描述的。

前 言

移动网际网路时代 来临,一个崭新的时代开始了。所谓移动网际网路就是将移动通信和网际网路整合在一起,使移动设备(包括手机和上网本)可以随时随地地访问网际网路资源和套用。网际网路时代创造了一个经济神话,也造就了很多时代英雄,他们一个个令人仰慕。试想为数亿的手机用户和数亿的网民建立一个共同的平台,使其套用到企业、商业和和农村之间,又会是怎样一个惊天动地的伟业呢?新时代开始了,你愿意输在起跑线上吗?
智慧型手机 是移动网际网路时代一个标誌性的客户端工具,它和传统的手机是有区别的,它就像一台“小电脑”,具有独立的作业系统,可以自由安装、卸载软体,具有强大的计算和存储能力,可以通过移动通信网路来实现无线网路接入。智慧型手机一般具备如下特点:高速度处理晶片、大存储晶片和存储扩展能力、面积大、标準化、可触摸的显示屏、摄像头至少300万像素、支持播放式的手机电视、必须支持GPS导航、作业系统必须支持新套用的安装等。
网际网路的竞争格局基本定型,那幺移动网际网路时代竞争的焦点在智慧型手机终端上,软体部分包括智慧型手机作业系统和套用软体。
目前智慧型手机作业系统有:诺基亚的Symbian、苹果的iOS、微软的Windows Mobile和Google的Android等。
Google 于1998年9月7日创立,经过十几年在搜寻引擎方面的精耕细作,成为全球网际网路巨头,尤其在地图搜寻的套用更是引人注目。Google于2007年11月5日宣布的基于Linux平台的开源手机作业系统,名称为Android,中文译为“机器人”。这意味着Google在移动网际网路时代开始抢跑并领跑。
Android 是一个真正意义上的开源智慧型手机作业系统,该系统由底层的Linux、中间层的软体包和上层的Java应用程式组合而成。该系统一经推出立即受到了全球移动设备厂商和开发者的热捧。
2008年9月22日,美国运营商T-Mobile USA在纽约正式发布第一款Google手机——T-Mobile G1。该款手机为中国台湾宏达电代工製造,是世界上第一部使用Android作业系统的手机,它支持WCDMA/HSPA网路,理论下载速率为7.2Mbps,并支持Wi-Fi。到了2010年1月,Google开始发布自家品牌手机Nexus One。该款手机使用的作业系统是Android 2.1。如下左图为G1,右图为Nexus One。
图1 G1和Nexus One
内容简介
本书分为三个部分,包括基础篇、技术篇和套用篇。由浅入深地讲述了Android套用开发的方方面面。
篇 名 章 名 内容简介
第一篇 基础篇 第1章 Android概述 Android概述,讲述了Android的前生后世、架构和特点、Android Market、应用程式组件和Android与Java ME的区别及联繫
第2章 Android开发基础 Android开发基础,讲述了Android开发环境的搭建、Android常用工具的使用和第一个Android应用程式的开发
第二篇 技术篇 第3章 Android中的资源访问 Android 中的资源访问,讲述了如何定义和访问Android中的外部资源。
第4章 Android用户界面 Android 用户界面,讲述了Android中的事件处理机制、布局管理和常用组件的使用。
第5章 Android基本程式单元Activity Android 基本程式单元Activity,讲述了Android中重要组件Activity的创建、启动和生命周期等内容
续表
篇 名 章 名 内容简介
第二篇 技术篇 第6章 Android组件之间的信使Intent Android 组件之间的信使Intent,讲述了Intent对象及其属性、Intent的实现策略和Intent的常见套用
第7章 Android Service组件 Android Service组件,讲述了Android中的后台服务Service的概念、创建和使用,并详细讲解了远程服务的调用
第8章 Android广播事件处理 Broadcast Receiver Android 广播事件处理 Broadcast Receiver,讲述了广播事件处理机制、Notification、NotificationManager和AlarmManager的使用
第9章 Android中的数据存取 Android中的数据存取,讲述了Android的四种数据存取方法:Preference、File、SQLite和Network
第10章 Content Provider Content Provider,讲述了Android不同应用程式之间相互共享数据的机制,包括ContentProvider和ContentResolver
第11章 Android中的多媒体套用 Android中的多媒体套用,讲述了Android的图片套用、音频及视频播放、音频及视频录製和照相机的使用
第12章 Android中的图形图像 Android中的图形图像,讲述了Android中的图片、动画、图形绘製和图形特效
第13章 Android中的网际网路套用 Android中的网际网路套用,讲述了Android中的各种网路套用,包括Socket、URL、HTTP、Web Service和WebView组件
第14章 Android中的GPS套用 Android中的GPS套用,讲述了LocationManager、LocationProvider、跟蹤、定位、Geocoder正逆向编解码和可视化位置服务
第三篇 套用篇 第15章 Android套用案例——移动警务通 Android 套用案例——移动警务通,通过一个真实的商业案例讲解了Android的各种套用,本项目包括信息採集、信息查询、照片上传、GPS定位等综合警务套用
第16章 Android套用案例——雷电游戏 Android 套用案例——雷电游戏,通过一个完整的雷电游戏,讲述了Android的游戏开发思路、框架和具体实现,并比较了Android游戏开发和Java ME游戏开发的异同,成功移植了Java ME游戏API到Android当中
第17章 Android套用案例——备忘录 Android 套用案例——备忘录,通过一个Android基础套用项目综合套用了Android中的各种组件,包括Activity、Service、Broadcast Receiver、ContentProvider、Intent和View的套用
第18章 Android套用案例——无线点餐系统 Android 套用案例——无线点餐系统,通过一个真实的商业案例讲解了Android的各种套用,本项目包括操作员登录、点餐、结算、转台、并台、查台、更新数据和退出系统等餐厅点餐的常用操作
本书特点
1.实例丰富,步步为“赢”
作为一名从业多年的开发人员,笔者深刻体会到技术型书籍中的实例代码对读者的重要意义,所以本书实例占据了本书的很大篇幅;作为一名多年的培训讲师,笔者也掌握了如何“传道”的技巧,这种技巧就是“编程思路”,也叫“编程步骤”,所以本书中每个实例开始部分都有概括性的步骤总结,使读者有“画竹必先有成竹于胸”的感受。
2.代码整齐,注释清晰
为了使读者更好更快地学习Android,书中的代码非常整齐,并且每行代码都有注释。下面的代码段演示了有注释的程式和没有注释的程式。
本书内容的介绍:
作为一本android套用开发书籍,本书既适合android初学者,也适合具备了一定android开发经验但需要开发案例的高级读者。
本书分为三个部分,共18章,由浅入深地详细介绍了android的每个开发细节。
本书基础翔实,实例丰富,案例真实。从基础到案例覆盖了android套用开发的三大领域:基础套用、网路套用和游戏套用。读者所需要学习的,正是本书描述的。
?有注释
package com.amaker.ch03.dimen;
import android.app.Activity;
import android.content.res.Resources;
import android.os.Bundle;
import android.widget.Button;
import com.amaker.test.R;
/**
*
* @author 郭宏志
* 测试尺寸资源
*/
public class TestDimensionActivity extends Activity {
private Button myButton;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 设定当前Activity的内容布局视图
setContentView(R.layout.test_dimen);
// 通过findViewById方法获得Button实例
myButton = (Button)findViewById(R.id.Button01);
// 获得Resources 实例
Resources r = getResources();
// 通过getDimension方法获得尺寸值
float btn_h = r.getDimension(R.dimen.btn_height);
float btn_w = r.getDimension(R.dimen.btn_width);
// 设定按钮的宽
myButton.setHeight((int)btn_h);
// 设定按钮的高
myButton.setWidth((int)btn_w);
}
}
?没有注释
package com.amaker.ch03.dimen;
import android.app.Activity;
import android.content.res.Resources;
import android.os.Bundle;
import android.widget.Button;
import com.amaker.test.R;
public class TestDimensionActivity extends Activity {
private Button myButton;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.test_dimen);
myButton = (Button)findViewById(R.id.Button01);
Resources r = getResources();
float btn_h = r.getDimension(R.dimen.btn_height);
float btn_w = r.getDimension(R.dimen.btn_width);
myButton.setHeight((int)btn_h);
myButton.setWidth((int)btn_w);
}
}
3.案例真实,覆盖全面
本书分为三篇,从Android的基础知识讲到Android的项目实战,覆盖了Android套用开发的三大领域:基础开发、网际网路套用开发和游戏开发。
致谢
最后衷心地感谢我的父母、家人、朋友、同学和同行的伙伴们。再次感谢我的父母,感谢你们对我的培养和寄予的厚望,感谢你们拖着年迈的身体为我照料那个让人可爱又可恨的女儿。
感谢电子工业出版社的胡辛征老师在写作风格和布局谋篇方面给予的建议和帮助,感谢江立老师耐心细緻的编辑、修正。他们的丰富经验和认真负责的态度,使得本书从开始粗糙的初稿变成最后精美的成书。
郭宏志
2010年3月

目 录

第一篇 基础篇
第1章 Android概述 2
1.1 Android的前世今生 3
1.1.1 Android的产生 3
1.1.2 Android的发展 3
1.2 Android的平台架构及特性 4
1.2.1 Android平台特性 5
1.2.2 Android平台架构 5
1.3 Android Market 7
1.4 Android应用程式组件 8
1.4.1 Activity 9
1.4.2 Service 9
1.4.3 Broadcast Receiver 9
1.4.4 ContentProvider 9
1.4.5 View 10
1.4.6 Intent 10
1.5 Android与Java ME的区别与联繫 10
1.5.1 二者的区别 10
1.5.2 二者的联繫 10
1.5.3 各自的优势 11
第2章 Android开发基础 12
2.1 Android开发环境的搭建 12
2.1.1 下载Android SDK 13
2.1.2 下载安装JDK 15
2.1.3 下载Eclipse 16
2.1.4 下载安装ADT 16
2.2 Android常用工具的使用 18
2.2.1 创建Android Virtual Devices(AVD) 18
2.2.2 模拟器(Emulator)的使用 20
2.2.3 Android Debug Bridge(ADB)的使用 20
2.2.4 Dalvik Debug Monitor Service(DDMS)的使用 21
2.2.5 Android Asset Packaging Tool(AAPT)的使用 22
2.2.6 DX的使用 22
2.2.7 mksdcard的使用 22
2.3 我的第一个Android套用 22
2.3.1 纯手工创建一个Android套用 22
2.3.2 使用Eclipse创建一个Android套用 25
第二篇 技术篇
第3章 Android中的资源访问 32
3.1 资源简介 33
3.1.1 资源的类型和布局 33
3.1.2 资源档案的使用 33
3.2 使用颜色(color)资源 35
3.2.1 颜色值定义 35
3.2.2 颜色资源XML档案的定义 35
3.2.3 使用颜色资源 36
3.3 使用字元串(string)资源 37
3.3.1 字元串资源XML档案的定义 37
3.3.2 字元串资源XML档案的使用 38
3.4 使用尺寸(dimen)资源 39
3.4.1 Android中支持的尺寸单位 39
3.4.2 尺寸资源XML档案的定义 40
3.4.3 尺寸资源XML档案的使用 40
3.5 使用原始XML资源 42
3.5.1 原始XML资源档案的定义 42
3.5.2 原始XML档案的使用 42
3.6 使用drawables资源 45
3.7 使用布局(layout)资源 47
3.7.1 布局档案的定义 47
3.7.2 布局档案的使用 48
3.8 使用选单(menu)资源 49
3.8.1 选单资源档案的定义 50
3.8.2 选单资源档案的使用 51
第4章 Android用户界面 55
4.1 选单 55
4.1.1 选项选单(Option Menu) 56
4.1.2 上下文选单(Context Menu) 57
4.1.3 子选单(Sub Menu) 59
4.2 对话框 61
4.3 提示信息(Toast) 64
4.4 事件处理 66
4.4.1 事件处理机制 66
4.4.2 Android中的事件监听器 68
4.4.3 事件处理步骤 69
4.5 布局管理(Layout) 72
4.5.1 线性布局 73
4.5.2 帧布局 75
4.5.3 表格布局 76
4.5.4 相对布局 77
4.5.5 绝对布局 78
4.6 组件(Widget) 79
4.6.1 常用组件 79
4.6.2 自动完成文本框(AutoCompleteTextView) 86
4.6.3 选项卡(Tab) 88
4.6.4 进度条(ProgressBar) 91
4.6.5 日期、时间选择对话框(DataPickerDialog、TimePickerDialog) 95
4.6.6 列表视图(ListView) 97
4.6.7 格线视图(GridView) 99
4.6.8 画廊视图(Gallery) 101
4.6.9 地图视图(MapView) 105
4.6.10 网路视图(WebView) 108
第5章 Android基本程式单元Activity 111
5.1 何谓回调 111
5.2 Activity简介 113
5.2.1 Activity的创建 113
5.2.2 启动另一个Activity 115
5.2.3 Activity之间传递数据 117
5.2.4 启动另一个Activity并返回结果 121
5.3 Activity的生命周期 126
第6章 Android组件之间的信使Intent 130
6.1 Intent对象及其属性 131
6.1.1 Intent的ComponentName属性 131
6.1.2 Intent的Action属性 135
6.1.3 Intent的Data属性 140
6.1.4 Intent的Category属性 141
6.1.5 Intent的Extras属性 142
6.2 系统标準Activity Action套用 144
6.2.1 和打电话相关的标準Activity Action套用 145
6.2.2 访问浏览器和地图 147
6.2.3 发邮件 149
6.3 Intent的实现策略 151
第7章 Android Service组件 159
7.1 Service简介 159
7.1.1 创建一个Service 159
7.1.2 启动和停止Service 160
7.1.3 绑定一个已经存在的Service 161
7.1.4 Service实例演示 161
7.2 远程Service调用 166
7.2.1 创建一个AIDL档案 166
7.2.2 实现AIDL档案生成的Java接口 170
7.2.3 将你的接口暴露给客户端 171
7.2.4 客户端调用 171
第8章 Android广播事件处理 Broadcast Receiver 173
8.1 自己定义Broadcast Receiver来处理广播事件 173
8.2 系统广播事件的使用 176
8.3 Notification和NotificationManager的使用 178
8.3.1 Notification和NotificationManager简介 178
8.3.2 通知实例演示 179
8.4 AlarmManager的使用 186
第9章 Android中的数据存取 190
9.1 Preference 190
9.1.1 Preference简介 190
9.1.2 Preference套用实例——保存临时简讯 191
9.2 File 193
9.3 SQLite 195
9.3.1 SQLiteDatabase 195
9.3.2 SQLiteOpenHelper 199
9.3.3 SQLite套用实例——收藏管理 201
第10章 Content Provider 208
10.1 Content Provider简介 208
10.1.1 Content Provider的常用方法 208
10.1.2 ContentResolver 209
10.1.3 URI 209
10.1.4 查询系统ContentProvider内容 210
10.1.5 添加系统ContentProvider内容 211
10.1.6 添加系统ContentProvider图片内容 211
10.2 自定义ContentProvider 212
10.2.1 创建ContentProvider的步骤 212
10.2.2 ContentProvider实例 213
第11章 Android中的多媒体套用 221
11.1 音频及视频播放 221
11.1.1 从源档案中播放 221
11.1.2 从档案系统中播放 222
11.1.3 从网路中播放 222
11.2 迷你音乐播放器 223
11.3 迷你视频播放器 228
11.4 音视频的录製 229
11.5 Camera照相 233
第12章 Android中的图形图像 238
12.1 在Android中访问图片 238
12.1.1 使用图片档案创建Drawable对象 239
12.1.2 使用XML档案定义Drawable属性 240
12.1.3 Bitmap和BitmapFactory 241
12.2 Android中的动画 242
12.2.1 Tween动画 242
12.2.2 Frame动画 251
12.3 动态图形绘製 253
12.3.1 动态图形绘製的基本思路 253
12.3.2 动态图形绘製类简介 256
12.3.3 绘製几何图形 257
12.4 图形特效 261
12.4.1 使用Matrix实现旋转、缩放和平移 261
12.4.2 使用Shader类渲染图形 264
第13章 Android中的网际网路套用 268
13.1 通过Socket、ServerSocket进行网路编程 268
13.1.1 Socket、ServerSocket编程模型 268
13.1.2 Socket编程实例 269
13.2 通过URL进行网路编程 271
13.3 通过HTTP进行网路编程 273
13.3.1 使用HttpURLConnection 273
13.3.2 使用Apache HTTP客户端 278
13.4 通过Web Service进行网路编程 280
13.5 直接使用WebView视图组件显示网页 285
13.5.1 使用WebView打开网页 285
13.5.2 使用WebView载入HTML 286
第14章 Android中的GPS套用 287
14.1 LocationManager和LocationProvider简介 287
14.1.1 LocationManager 288
14.1.2 LocationProvider 288
14.2 通过模拟器测试位置服务 289
14.3 获得LocationProvider 292
14.3.1 通过名称获得LocationProvider 292
14.3.2 获得当前可利用的LocationProvider 292
14.3.3 根据Criteria条件获得LocationProvider 292
14.4 定位和跟蹤 293
14.4.1 定位 294
14.4.2 跟蹤 296
14.5 趋近警告 298
14.6 Geocoder正逆向编解码 300
14.6.1 正向编码 301
14.6.2 反向编码 303
第三篇 套用篇
第15章 Android套用案例——移动警务通 306
15.1 移动警务通需求分析 306
15.2 移动警务通总体设计 307
15.2.1 系统架构 307
15.2.2 技术选型 307
15.2.3 系统功能 308
15.3 移动警务通详细设计 309
15.3.1 系统包及其资源规划 309
15.3.2 Activity界面规划及其程式执行流程 310
15.3.3 系统资料库设计 312
15.4 系统编码实现 313
15.4.1 登录模组Android客户端实现 313
15.4.2 登录模组伺服器端实现 320
15.4.3 程式主选单实现 325
15.4.4 信息查询子选单实现 326
15.4.5 在逃人员查询模组客户端实现 327
15.4.6 在逃人员查询模组伺服器端实现 332
15.4.7 信息採集子选单实现 338
15.4.8 机动车违章信息採集Android客户端实现 339
15.4.9 机动车违章信息採集伺服器端实现 345
15.4.10 档案上传子选单实现 348
15.4.11 现场照片上传Android客户端实现 349
15.4.12 现场照片上传伺服器端实现 360
15.4.13 GPS定位功能子选单实现 363
15.4.14 GPS定位“我的位置”的实现 364
15.4.15 GPS定位“按坐标查询”的实现 369
15.4.16 GPS定位“按地址查询”的实现 374
第16章 Android套用案例——雷电游戏 378
16.1 Android游戏开发基本框架 378
16.1.1 Android游戏开发基础 378
16.1.2 Android游戏开发基本框架 379
16.2 将Java ME游戏API嫁接到Android 384
16.2.1 Layer类的移植 384
16.2.2 Sprite类的移植 386
16.2.3 TiledLayer类的移植 386
16.2.4 LayerManager类的移植 386
16.3 Android版雷电游戏的实现 387
16.3.1 雷电游戏简介 387
16.3.2 雷电游戏的实现 387
第17章 Android套用案例——备忘录 396
17.1 备忘录数据存储实现 396
17.1.1 资料库表设计 396
17.1.2 备忘录ContentProvider实现 397
17.2 备忘录列表展示 402
17.3 备忘录维护 405
17.4 备忘录定时提醒 412
17.4.1 定义提醒广播接收器 412
17.4.2 显示提醒Activity 413
第18章 Android套用案例——无线点餐系统 417
18.1 无线点餐系统需求分析 417
18.2 无线点餐系统概要设计 417
18.2.1 系统物理架构 418
18.2.2 技术选型 418
18.2.3 系统功能 419
18.3 无线点餐系统详细设计 422
18.3.1 系统包及其资源规划 422
18.3.2 系统资料库设计 423
18.4 系统编码实现 424
18.4.1 登录模组Android客户端实现 424
18.4.2 登录模组伺服器端实现 432
18.4.3 程式主选单实现 437
18.4.4 点餐功能客户端实现 440
18.4.5 点餐功能伺服器端实现 450
18.4.6 结算模组Android客户端实现 455
18.4.7 结算模组伺服器端实现 458
18.4.8 查台模组Android客户端实现 466
18.4.9 查台模组伺服器端实现 470
18.4.10 更新模组Android客户端实现 473
18.4.11 更新模组伺服器端实现 477
18.4.12 转台模组Android客户端实现 480
18.4.13 转台模组伺服器端实现 482
18.4.14 并台模组Android客户端实现 485
18.4.15 并台模组伺服器端实现 488

标 签

搜索
随机推荐

Powered By 种豆资源网||