第一篇 扬帆篇 2
第1章 Android Time是时候了吗 2
1.1Android是什么,可以吃吗 2
1.1.1一切都从Android开始 2
1.1.2细说Android 2
1.1.3Android的演变与现状 3
1.2Android的发展 3
1.2.1Android成长之路 3
1.2.2手机开放联盟 4
1.2.3已面市的Android手机 5
1.2.4OMS简介 5
1.2.5Android用户简析 6
1.3Android的前景 7
1.3.1Android平台的发展与Android手机的前景 7
1.3.2Android在其他平台的应用 7
1.3.3Android应用开发的前景 8
1.4小结 9
第2章 Android项目赢利模式探讨 10
2.1我是软件开发商 10
2.1.1制作应用程序 10
2.1.2选择应用软件类型 10
2.1.3关于开发 10
2.2Android Market平台销售 11
2.2.1制作应用软件投放在Market上销售 11
2.2.2收费应用一定要有价值 11
2.2.3真正的用户 11
2.2.4Android Market平台销售存在的弊端 15
2.2.5本土化策略 15
2.3是赢利而非广告 15
2.3.1免费软件是大趋势 15
2.3.2广告 16
2.3.3GoogleAdsens 16
2.3.4Admob 16
2.3.5专业性广告 18
2.3.6植入性广告 18
2.3.7对广告创收的忠告 18
2.4为互联网服务商定制客户端 19
2.4.1术业有专攻 19
2.4.2提供API的互联网服务商 19
2.4.3没有开放API接口的网站 19
2.5做项目的真谛:时间换金钱 20
2.6做解决方案要注意的问题 20
2.7小结 22
第二篇 起航篇 24
第3章 用户定义与UI设计 24
3.1UI概述 24
3.1.1UI定义 24
3.1.2UI设计的重要性 26
3.2用户定义与交互设计方法 28
3.2.1了解自己和自己的技术 28
3.2.2以UI设计师的身份思考问题 28
3.2.3UI细节设计与开发 31
3.3小结 33
第4章 Android 2.0技术 34
4.1Android 2.0来临的时代 34
4.1.1Android 2.0发布 34
4.1.2Android 2.0技术时代 34
4.1.3Android 2.0手机前景展望 35
4.2Android 2.0新特性 35
4.2.1Android 2.0 UI新特性 36
4.2.2Android 2.0新特性 41
4.2.3Android 2.0自带程序新特性 43
4.3Android 2.0开发环境(SDK/开发环境/ADT) 45
4.3.1Android 2.0 SDK下载 45
4.3.1.1初见Android——新手入门 46
4.3.1.2再聚Android——超级Fans 57
4.3.2Android 2.0 SDK模式分析 60
4.3.2.1组件模式下的目录结构 61
4.3.2.2官方组件版本SDK 63
4.3.3Android 2.0 SDK更新元素 64
4.3.4Android 2.0开发环境深入与兼容性 65
4.3.4.1Android 2.0开发环境的深入 65
4.3.4.2Android 2.0兼容性 71
4.4Android 2.0前沿技术实例解析——Gestures手势 73
4.5小结 76
第5章 Android基础开发实例 78
5.1Android体系结构介绍 78
5.1.1应用程序 79
5.1.2应用程序框架 79
5.1.3各种库和Android运行环境 79
5.1.4Linux内核 80
5.2Android执行文件apk的组成结构 80
5.3Android应用的逻辑组成 81
5.3.1人机交互界面Activity介绍 81
5.3.2广播接收者 84
5.3.3服务 84
5.3.4内容提供者 84
5.4快速构建一个Android工程项目 85
5.5创建Android虚拟设备 88
5.5.1使用create avd命令创建Android avd 88
5.5.2借助ADT创建Android avd 88
5.6运行一个Android工程 90
5.7调试一个Android工程 91
5.8签名Android的执行文件 93
5.8.1制作签名文件 93
5.8.2使用签名文件给apk签名 96
5.9发布应用到Android Market商店 97
5.9.1注册Market账号 98
5.9.2发布已签名的应用到AndroidMarket商店 98
5.9.3通过Android Market手机客户端下载应用到手机 100
5.10发布应用到eoeMarket商店 101
5.11小结 108
第6章 NDK底层开发与扩展 109
6.1NDK概述 109
6.2向底层开发进军 112
6.2.1底层开发人员需要具备的素质 112
6.2.2开发前的准备(环境搭建篇) 112
6.2.2.1Windows下的环境搭建 112
6.2.2.2Linux(ubuntu)下AndroidNDK配置与开发 117
6.2.2.3maebook下Android NDK配置与开发 119
6.2.2.4NDK项目hello-jni 121
6.2.2.5进一步了解NDK 123
6.3底层开发实例解析——实时放大镜 125
6.3.1实例概述 125
6.3.2编写程序代码 126
6.3.2.1创建工程 126
6.3.2.2编写Java代码 127
6.3.2.3编写和编译C文件 139
6.3.2.4运行程序并对比性能 150
6.3.2.5程序的签名与打包 151
6.4小结 152
第7章 占据手机桌面的应用——Widget 153
7.1Widget简介 153
7.1.1Widget概念 153
7.1.2Widget市场地位 154
7.1.3Widget市场容量 155
7.2Widget的实现方式 157
7.2.1Widget实现的必备元素 157
7.2.2Widget实现的步骤 158
7.2.2.1创建Demo工程项目 158
7.2.2.2Widget桌面布局设计 160
7.2.2.3添加AppWidgetProviderInfo元数据 162
7.2.2.4实现AppWidgetProvider类 163
7.2.2.5Manifest中注册receiver——AppWidgetProvider 165
7.2.2.6添加桌面Widget插件 166
7.2.2.7实现Widget配置Activity类 167
7.2.2.8Manifest中注册配置Activity类 167
7.2.2.9AppWidgetProviderInfo元数据中设置要启动的Widget配置Activity 168
7.2.2.10设计Widget配置Activity布局 168
7.2.2.11实现Widget配置Activity的逻辑框架、结构与功能 170
7.2.2.12动态配置桌面Widget插件 173
7.3Widget实例 174
7.3.1Widget的构思和策划 174
7.3.2Widget的架构和实现 181
7.3.2.1总体框架设计 182
7.3.2.2详细框架设计 184
7.3.2.3代码实现 186
7.3.2.4Widget测试 279
7.3.3Widget的包装和产品化 283
7.3.3.1Widget包装 283
7.3.3.2Widget产品化 294
7.4Widget底层框架分析 295
7.4.1添加APP Widget到桌面 295
7.4.1.1在Home空白处长按以及Menu中单击添加时发生的事件 296
7.4.1.2ADD Dialog中选中Widgets后发生的事件 302
7.4.1.3在AppWidget Picker中点击某项后发生的事件 307
7.4.1.4添加APPWidget到桌面 309
7.4.2AppWidget的更新 318
7.4.3APP Widget的管理 324
7.4.4APP Widget框架接收的Action 335
7.4.5APP Widget的回调方法 339
7.4.6APP Widget的生命周期 341
7.5Widget产品注意问题 350
7.6小结 351
第三篇 搏击篇 353
第8章 传统应用软件——突围之道 353
8.1传统应用软件——Android背后的支柱 353
8.1.1应用的分类及统计 354
8.1.2透过表象看本质,找准方向 354
8.1.3立足优势和不足,寻找突破点 355
8.2传统应用软件——突围前的准备 355
8.2.1一个未被开发的新兴需求市场 355
8.2.2一个竞争激烈但有机可乘的市场 356
8.2.3换个角度思考出路 358
8.3传统应用软件——开始突围 360
8.3.1快速出击新兴的需求市场 360
8.3.2站在先行者的肩膀上前进 365
8.3.3绕过去也是一种成功 367
8.4小结 367
第9章 成为游戏开发家族的一员 368
9.1牵引Android发展的火车头——Android游戏定位 368
9.2市场前景分析 368
9.3游戏开发实例《是男人就坚持20秒》 369
9.3.1游戏策划 370
9.3.2游戏构架的搭建 371
9.3.3美工制作 375
9.3.4编程实现 376
9.3.5后续开发展望 395
9.3.6开发流程总结 398
9.4破卵成蝶,点石成金——进阶技巧 399
9.4.1碰撞判断 399
9.4.2内存管理 405
9.4.3寻路算法 410
9.5小结 411
第10章 移动互联网与平台化产品 412
10.1移动互联网平台化的那点事 412
10.1.1移动互联网概述及其发展趋势 412
10.1.2平台化概述 413
10.1.3平台化的诱惑 413
10.1.4移动互联网平台化产品,你准备好了吗 414
10.2移动互联网平台化产品方向的选择建议 414
10.2.1移动互联网产品特点 414
10.2.2移动互联网产品方向 415
10.3移动互联网平台化产品实战 416
10.3.1产品的选型、构思和策划 416
10.3.2技术选型 417
10.3.3产品技术架构 419
10.3.4服务器端技术的实现 424
10.3.4.1预备知识 424
10.3.4.2创建DB 426
10.3.4.3实现Web端 431
10.3.4.4实现管理端 443
10.3.4.5实现API 446
10.3.5应用部署 453
10.3.6接口文档撰写 457
10.3.7客户端技术实现 463
10.4移动互联平台化开发中需注意的问题 467
10.5小结 468
第11章 传统互联网服务商迁移 469
11.1传统互联网服务商的特征及其移动市场分析 469
11.2手机壁纸服务需求分析和设计 469
11.2.1壁纸服务的发展概况 469
11.2.2Android壁纸服务的整体架构设计 470
11.3技术实现 472
11.3.1数据库实现存储 472
11.3.2服务器端技术实现 474
11.3.3客户端实现 478
11.4运行效果 490
11.5小结 491
第12章 位置服务——随时随地的生活助手 492
12.1站在时代的壶口瀑布上——位置服务概述 492
12.2观念就是生产力——位置服务的前景和市场分析 493
12.2.1LBS行业发展概况 493
12.2.2LBS技术发展现状 494
12.2.3LBS技术发展趋势 495
12.2.4LBS行业发展可参考性分析 496
12.3做事,做市,做势——位置服务类应用实战 497
12.3.1思路决定出路——选择一个好的方向 497
12.3.2智慧与机遇的嫁接——架构和实施 500
12.3.3内涵与表象的兼顾——产品和包装 515
12.4慢工细磨,反复论证——产品过程需要注意的问题 516
12.4.1产品的概念 516
12.4.2产品的需求分析 518
12.4.3产品的设计 518
12.4.4找到产品的平衡点 518
12.5小结 518
第13章 Android平台应用向OMS平台迁移 519
13.1OMS概述 519
13.2OMS特色 520
13.2.1OMS UI特色 520
13.2.2OMS业务与自带应用特色 527
13.2.3OMS SDK特色 528
13.3OMS和Android的关系 530
13.4普通Android应用如何向OMS平台迁移 531
13.4.1OMS开发平台搭建 531
13.4.2OMS应用和Android应用的差异 540
13.4.3普通Android应用向OMS平台迁移 541
13.5小结 542
第14章 Android源码开发环境及源码编译 543
14.1快速构建Android源码开发环境 543
14.1.1快速安装Ubuntu 9.10或Ubuntu 10.04 543
14.1.2快速构建基于Ubuntu下的Android源码开发环境 546
14.1.2.1快速安装Android源码下载环境及编译环境 546
14.1.2.2下载Android源码 548
14.2Android源码编译技术 553
14.2.1常用Android核心编译命令 553
14.2.2Android编译完成后的代码结构 555
14.3添加自己的应用程序到Android源码中 558
14.3.1添加自定义内置软件项目 558
14.3.2关于Android系统级应用使用第三方Jar包 560
14.3.3结合Eclipse编辑Android源码 561
14.4构建自己的Android桌面 563
14.4.1构建普通的HOME类型应用程序 564
14.4.2定制自己的Android HOME桌面 565
14.5小结 569
第四篇 瞭望篇 572
第15章 你真的准备好了吗 572
15.1Android战场上的人们 572
15.1.1中国Android事业的发展 572
15.1.2Android在中国 573
15.2对于从业者的挑战与机遇 574
15.2.1对于从业者的挑战 574
15.2.2我们的机遇 575
15.3观念的转变 576
15.4小结 576
第16章 Android行动是时候了 577
16.1智能手机系统的现况和发展趋势 577
16.1.1智能手机系统群雄逐鹿 577
16.1.2智能手机业发展趋势 581
16.2Android应用商店现况和发展趋势 584
16.3Android从业者何去何从 587
16.4小结 588