图书介绍

Android开发权威指南 第2版PDF|Epub|txt|kindle电子书版本网盘下载

Android开发权威指南 第2版
  • 李宁编著 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:9787115320339
  • 出版时间:2013
  • 标注页数:739页
  • 文件大小:198MB
  • 文件页数:757页
  • 主题词:移动终端-应用程序-程序设计-指南

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Android开发权威指南 第2版PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 初识Android平台1

1.1 Android简介1

1.2 Android的制胜法宝2

1.3 Android的版本发展历程3

1.3.1 Android1.5(纸杯蛋糕)3

1.3.2 Android1.6(甜甜圈)4

1.3.3 Android2.1(松饼)4

1.3.4 Android2.2(冻酸奶)5

1.3.5 Android2.3(姜饼)5

1.3.6 Android3.0(蜂巢)6

1.3.7 Android4.0(冰激凌三明治)6

1.3.8 Android4.1/4.2(果冻豆)7

1.4 Android的系统架构8

1.5小结9

第2章 搭建Android开发和测试环境10

2.1搭建Android开发环境需要些什么10

2.2安装Java开发环境10

2.2.1安装JDK11

2.2.2安装和配置Eclipse11

2.3安装Android开发环境12

2.3.1下载和安装Android SDK13

2.3.2下载和安装 Android NDK13

2.3.3安装和配置Eclipse插件: ADT14

2.4配置Android测试环境15

2.4.1建立Android虚拟设备(AVD)15

2.4.2启动Android模拟器16

2.4.3安装真机测试环境17

2.5小结18

第3章 第一个Android应用程序19

3.1从第一个Android程序中可以学到什么19

3.2建立Android工程19

3.3 Android工程的结构21

3.4在窗口上放两个按钮22

3.5编写窗口类23

3.6修改字符串资源24

3.7运行Android应用程序25

3.8调试Android应用程序27

3.9签名Android应用程序27

3.10小结29

第4章Android应用程序架构30

4.1 Android应用程序中的资源30

4.1.1资源存放在哪里30

4.1.2资源的基本使用方法30

4.2 Android的应用程序组件32

4.2.1窗口(Activity)组件32

4.2.2服务(Service)组件32

4.2.3广播接收者(B roadcastreceivers)组件33

4.2.4内容提供者(Content Provider)组件33

4.3 AndroidManifest.xml文件的结构33

4.4小结34

第5章 窗口(Activity)与视图(View)35

5.1声明和使用Activity35

5.1.1 Activity的基本用法35

5.1.2同时适合手机和平板电脑的窗口风格38

5.2 Activity的生命周期40

5.3窗口的常用事件43

5.3.1设置窗口标题事件(onTitleChanged)44

5.3.2键盘按下和抬起事件(onKeyDown和onKeyUp)45

5.3.3任意情况下捕捉键盘事件(dispatchKeyEvent)48

5 .3.4回退事件 (onBackPressed)49

5.3.5按键长按事件(onKeyLongpPress)50

5.3.6屏幕触摸事件 (onTouchEvent)50

5.3.7窗口获得焦点事件(onWindowFocusChanged)51

5.4在不同Activity之间传递数据52

5.4.1使用Intent传递数据53

5.4.2使用静态变量传递数据54

5.4.3使用剪贴板传递数据55

5.4.4使用全局对象传递数据57

5.5从Activity返回数据59

5.6视图(View)61

5.6.1视图简介61

5.6.2使用XML布局文件定义 视图61

5.6.3在代码中控制视图62

5.7显示系统窗口64

5.7.1直接拨号65

5.7.2将电话号传入拨号程序65

5.7.3调用拨号程序65

5.7.4浏览网页65

5.7.5查看联系人66

5.7.6显示系统设置界面(设置主 界面、Wi-Fi设置界面)66

5.7.7启动处理音频的程序66

5.7.8回到Home窗口(相当于按 Home键)66

5.8与Activity相关的技巧与特效67

5.8.1全屏显示(隐藏标题栏和状态栏)67

5.8.2定制窗口标题栏71

5.8.3为程序添加Splash75

5.8.4改变窗口大小、位置和 透明度76

5.8.5按两次关闭窗口79

5.8.6关闭所有的窗口79

5.8.7窗口截屏80

5.9小结82

第6章lntent与Intent Filter83

6.1 Android系统的信使:Intent83

6.2 Intent对象84

6.2.1 Intent对象可以封装和传递 哪些信息84

6.2.2组件名 (Component name)84

6.2.3动作(Action)85

6.2.4种类(Category)86

6.2.5数据(Data)87

6.2.6附加数据(Extra)88

6.2.7标志(Flags)89

6.3显式和隐式访问窗口89

6.4跨应用程序访问窗口90

6.5 Android系统的过滤机制大揭秘96

6.5.1过滤条件的设置96

6.5.2过滤器的筛选规则97

6.5.3示例:过滤机制应用 演示101

6.6 Android源代码与过滤器104

6.6.1系统内置程序有哪些 窗口可以利用104

6.6.2显示计算器 (Calculator)105

6.6.3用浏览器(Browser) 显示网页106

6.6.4拨打电话(Phone) 与授权108

6.7获取第三方程序中可调用的窗口109

6.8传递附加数据(Extra)111

6.9解析数据113

6.10小结114

第7章 窗口(Activity)高级技术115

7.1 Activity XML属性详解115

7.1.1设置Activity的基本 信息115

7.1.2屏幕方向切换(android:screenOrientation)117

7.1.3阻止Activity销毁和重建(android:confiigChanges)119

7.1.4允许Activity被实例化(android:enabled)123

7.1.5在最近应用列表中显示(android:excludeFromRecents)124

7.1.6允许其他程序访问当前窗口(android:exported)124

7.1.7硬件加速(android:hardwareAccelerated)125

7.1.8在多进程中创建窗口实例(android:multiprocess)125

7.1.9无法返回的Activi(android:noHistory)125

7.1.10指定要返回的窗口(android:parentActivi Name)126

7.1.11使窗口受到权限的保护(android:permission)126

7.1.12改变窗口所在的进程(android:process)127

7.1.13不保存窗口的状态 (android:stateNot Needed)129

7.1.14窗口的主题 (android:theme)129

7.1.15 扩展窗口UI(android:uiOptions)129

7.1.16设置输入法显示模式 (android:windowSoftlnputMode)130

7.2深入探索Activity从创建到销毁的过程130

7.2.1任务(Task)与回退栈(Back Stack)131

7.2.2保存窗口(Activity)状态133

7.2.3管理任务和回退栈134

7.2.4 Activity的4种创建 模式135

7.2.5用Java代码设置窗口 创建模式141

7.2.6窗口的乾坤大挪移 (affinity)144

7.2.7销毁不再使用的窗口147

7.3 Activity的别名149

7.4小结151

第8章 布局152

8.1 Android的五大布局152

8.1.1框架布局 (FrameLayout)152

8.1.2线性布局 (LinearLayout)154

8.1.3相对布局 (RelativeLayout)158

8.1.4表格布局 (TableLayout)159

8.1.5绝对布局 (AbsoluteLayout)160

8.2属性资源与Android命名空间160

8.3布局属性162

8.4布局高级技术163

8.4.1布局别名163

8.4.2重用布局164

8.4.3优化布局166

8.4.4动态装载布局167

8.4.5动态设置布局属性169

8.4.6从右到左布局 (RTL Layout)169

8.5小结170

第9章 菜单171

9.1菜单的基本用法171

9.1.1创建选项菜单 (Options Menu)171

9.1.2关联Activity173

9.1.3响应菜单的单击动作173

9.1.4动态添加、修改和删除 选项菜单174

9.1.5带复选框和选项按钮的 子菜单175

9.1.6上下文菜单176

9.1.7菜单事件177

9.1.8从菜单资源中装载菜单177

9.2菜单特效177

9.2.1自定义菜单178

9.2.2模拟UCWeb菜单效果180

9.3小结184

第10章Android的资源详解(一)185

10.1创建资源185

10.1.1手工创建资源文件185

10.1.2用ADT模板创建本地化图标资源186

10.1.3用ADT模板创建XML文件资源188

10.2使用资源188

10.2.1生成资源类文件(R.java)188

10.2.2从XML文件中访问资源190

10.2.3使用Java代码访问资源191

10.2.4 Java反射技术与枚举资源192

10.3字符串(String)资源193

10.3.1普通字符串193

10.3.2字符串数组194

10.3 .3复数字符串194

10.3.4在字符串中使用引号195

10.3.5用占位符格式化字符串195

10.3.6用HTML标签格式化字符串资源195

10.4值(values)资源196

10.4.1整数(Integer)资源196

10.4.2尺寸(Dimension)资源197

10.4.3布尔(Boolean)资源198

10.4.4颜色(Color)资源198

10.4.5 ID资源199

10.4.6整数数组(Integer-Array)资源200

10.4.7类型数组(Typed-Array)资源200

10.5菜单(menu)资源200

10.6图像(drawable)资源203

10.6.1普通图像资源203

10.6.2 XML图像资源204

10.6.3 Nine-Patch图像资源204

10.6.4 XML Nine-Patch图像资源205

10.6.5图层(Layer)资源205

10.6.6图像状态(State)资源206

10.6.7图像级别(Level)资源207

10.6.8淡入淡出(Cross-fade)资源208

10.6.9嵌入(Inset)图像资源210

10.6.10剪切(Clip)图像 资源210

10.6.11外形(Shape)资源211

10.7小结212

第11章Android的资源详解(二)213

11.1动画资源213

11.1.1属性(Property)动画213

11.1.2帧(Frame)动画215

11.1.3移动补间(TranslateTween) 动画217

11.1.4循环向右移动的EditText与上下弹跳的球218

11.1.5缩放补间(Scale Tween) 动画220

11.1.6 跳动的心221

11.1.7旋转补间(Rotate Tween) 动画222

11.1.8旋转的星系222

11.1.9透明度补间(Alpha Tween)动画223

11.1.10投掷炸弹224

11.1.11震动渲染器(Shake Interpolator)226

11.1.12自定义渲染器(Interpolator)227

11.2风格(Style)资源与主题(Theme)229

11.3小结232

第12章 资源的本地化233

12.1建立本地化的资源目录233

12.2资源目录的命名规则237

12.3建立别名资源237

12.3.1图像别名资源237

12.3.2布局别名资源238

12.3.3字符串别名资源238

12.3.4其他简单值别名资源238

12.4资源目录的优先级238

12.5屏幕适配239

12.5.1屏幕适配要考虑的因素239

12.5.2适配不同屏幕可以采用 的规则241

12.5.3屏幕尺寸和屏幕密度241

12.5.4位置、尺寸和字体应使用屏幕密度单位244

12.5.5与屏幕适配有关的标识符244

12.5.6影响屏幕适配的重要因素:布局和图像245

12.5.7典型的屏幕适配案例246

12.5.8在Google Play上限制屏幕尺寸和屏幕密度247

12.5.9在Android模拟器上测试各种屏幕尺寸和密度248

12.6小结248

第13章Android的控件详解(一)249

13.1显示文本的控件(TextView)249

13.1.1显示富文本(URL、不同大小、字体、颜色的文本)250

13.1.2用<img>标签在TextView控件上显示图像252

13.1.3单击链接弹出Activity254

13.1.4为指定文本添加背景256

13.2编辑文本的控件(EditText)258

13.2.1像QQ一样输入表情 图像259

13.2.2在EditText中输入特定的字符260

13.2.3 AutoCompleteTextView(自动完成输入内容的控件)261

13.3按钮(Button)和复选框(Checkbox)控件263

13.3.1 Button(普通按钮控件)263

13.3.2图文混排的按钮265

13.3.3 ImageButton(图像按钮控件)266

13.3.4 RadioButton(选项按钮控件)267

13.3.5 ToggleButton(开关状态按钮控件)267

13.3.6 CheckBox(复选框控件)268

13.4图像控件(ImageView)270

13.4.1 ImageView控件的基本 用法270

13.4.2显示指定区域的图像270

13.4.3缩放和旋转图像272

13.5时间与日期控件273

13.5.1 DatePicker(输入日期 的控件)273

13.5.2 TimePicker(输入时间 的控件)274

13.5.3 DatePicker、TimePicker与TextView同步显示 日期和时间274

13.5.4 AnalogClock和DigitalClock(显示时钟的控件)275

13.6小结275

第14章Android的控件详解(二)276

14.1进度条控件276

14.1.1 ProgressBar(进度条控件)276

14.1.2 SeekBar(拖动条控件)278

14.1.3设置ProgressBar和SeekBar的颜色及背景图278

14.1.4 RatingBar(评分控件)281

14.2列表控件282

14.2.1 ListView(普通列表控件)282

14.2.2为ListView列表项添加复 选框和选项按钮285

14.2.3对列表项进行增、删、改操作286

14.2.4改变列表项的背景色290

14.2.5 ListActivity(封装ListView的Activity)290

14.2.6 ExpandableListView(可扩展的列表控件)291

14.2.7 Spinner(下拉列表控件)293

14.3 GridView(网格控件)296

14.4 TabHost(标签控件)298

14.5 ViewStub(惰性装载控件)299

14.6小结300

第15章 可视化UI设计301

15.1拖放控件301

15.2设置视图属性303

15.3预览各种屏幕尺寸303

15.4语言和地区的本地化测试304

15.5其他可视化功能304

15.6小结305

第16章 对话框、Toast与通知栏(Notifiication)306

16.1对话框306

16.1.1带2个按钮(确认/取消) 的对话框306

16.1.2带3个按钮(覆盖/忽略/取消)的对话框307

16.1.3简单列表对话框308

16.1.4单选列表对话框309

16.1.5多选列表对话框311

16.1.6进度对话框312

16.1.7登录对话框315

16.1.8使用Activity托管对话框316

16.2 Toast318

16.3通知(Notifiication)319

16.3.1在状态栏上显示通知信息319

16.3.2永久存在的 Notifiication322

16.3.3自定义Notifiication323

16.4小结324

第17章 封装UI和代码利器——Fragment325

17.1 Fragment简介325

17.2什么时候使用Fragment326

17.3按照Fragment设计原则编写程序328

17.4 Fragment的生命周期332

17.5创建Fragment341

17.5.1通过XML布局文件创建Fragment341

17.5.2通过Java代码创建 Fragment342

17.5.3 创建无UI的Fragment344

17.5.4在低版本Android中使用Fragment(SupportLibrary)345

17.6 Activity与Fragment之间的交互346

17.6.1 Fragment与Activity之间 的交互346

17.6.2 Fragment的回调机制348

17.7 Fragment状态的持久化351

17.8 Fragment与回退栈(导航)355

17.9 FragmentManager与FragmentTransaction357

17.9.1管理Fragment事务357

17.9.2查找Fragment357

17.9.3跟踪回退栈状态358

17.9.4恢复历史状态358

17.9.5管理Fragment的状态359

17.9.6添加、删除和替换Fragment359

17.9.7分离(Detach)与附加(Attach)Fragment360

17.9.8显示和隐藏Fragment361

17.10 Fragment扩展361

17.10.1 ListFragment361

17.10.2 DialogFragment363

17.10.3其他Fragment扩展类366

17.11 Fragment模板源代码分析366

17.12小结368

第18章 动作栏——ActionBar369

18.1 ActionBar简介369

18.2 ActionBar基础370

18.2.1隐藏/显示ActionBar370

18.2.2添加和响应Action按钮372

18.3可上下两分的ActionBar374

18.4应用程序图标导航376

18.5收缩和展开Action View377

18.6 ActionProvider380

18.6.1分享信息(ShareActionProvider)380

18.6.2定制ActionProvider382

18.7导航标签384

18.8下拉导航列表388

18.9小结390

第19章Android的拖放技术391

19.1 Android中的拖放操作391

19.2拖放状态与拖放处理391

19.3拖动阴影392

19.4示例:拖动复制图像393

19.5小结395

第20章 数据存储解决方案396

20.1读写key-value对:SharedPreferences396

20.2文件流操作397

20.2.1 openFileOutput和openFileInput方法398

20.2.2读写SD卡中的文件399

20.3读写JSON格式的数据400

20.4 SQLite数据库404

20.4.1 SQLite数据库管理工具404

20.4.2 SQLiteOpenHelper类与自动升级数据库405

20.4.3数据绑定与SimpleCursorAdapter类406

20.4.4操作SD卡上的数据库409

20.4.5将数据库与应用程序一起发布410

20.4.6内存数据库411

20.5小结412

第21章 内容提供者(Content Provider)413

21.1 Content Provider的作用413

21.2获得系统数据413

21.2.1读取联系人信息414

21.2.2查看收件箱的短信415

21.3自定义Content Provider417

21.3.1查询城市信息417

21.3.2为Content Provider添加访问权限422

21.4如何查找系统提供的ContentProvider423

21.5小结425

第22章 广播接收器(Broadcast Receiver)426

22.1什么是广播426

22.2接收系统广播427

22.2.1 短信拦截427

22.2.2用代码注册广播接收器429

22.2.3广播接收器的优先级429

22.2.4来去电拦截430

22.2.5截获屏幕休眠与唤醒432

22.2.6开机自动运行433

22.2.7显示手机电池的当前电量434

22.3发送广播434

22.4小结435

第23章 服务(Service)436

23.1 Service基础436

23.1.1 Service的生命周期436

23.1.2开机启动Service438

23.2跨进程访问(AIDL服务)439

23.2.1什么是AIDL服务439

23.2.2建立AIDL服务的步骤439

23.2.3创建和调用A1DL服务440

23.2.4传递复杂数据的AIDL服务442

23.2.5 AIDL与来去电自动挂断445

23.3小结447

第24章Android的组件开发448

24.1 Android支持哪些组件开发方式448

24.2引用jar文件449

24.3跨工程引用450

24.4引用NDK Library451

24.5动态引用APK文件451

24.6动静结合的组件453

24.7脚本类型组件(JavaScript)与WebView控件453

24.8如何确定动态组件是否安装457

24.9升级动态组件459

24.10小结461

第25章Android的蓝牙开发技术462

25.1蓝牙简介462

25.2打开和关闭蓝牙设备462

25.3搜索蓝牙设备463

25.4蓝牙数据传输465

25.5蓝牙通信一定需要UUID吗467

25.6小结467

第26章 近距离天线通信——NFC技术468

26.1 NFC简介468

26.2 NFC、蓝牙和红外之间的差异469

26.3 NFC技术的未来前景470

26.4 Android中的NFC技术471

26.4.1 NDEF与非NDEF 数据471

26.4.2 NFC的三重过滤机制471

26.4.3开启Android的NFC 功能472

26.4.4编写NFC程序的基本 步骤473

26.5测试NFC程序需要的设备474

26.6让Android手机自动运行程序475

26.6.1向NFC标签写入数据 的基本步骤475

26.6.2向NFC标签写入启动 Android应用程序的 消息476

26.7让Android手机自动打开网页483

26.8读写NFC标签中的文本485

26.8.1实现读写文本数据应用 的基本思路485

26.8.2如何将NFC标签变成 NDEF文本格式485

26.8.3 NDEF文本格式解析486

26.8.4实现读写文本数据的 Android应用程序490

26.9读写NFC标签中的Uri496

26.9.1 NDEF Uri格式解析496

26.9.2实现读写Uri的 Android应用程序499

26.10利用NFC标签支持的数据格式进行过滤502

26.11处理任意NFC标签504

26.12读写非NDEF格式的数据505

26.13 Android Beam技术与数据 交互507

26.13.1传递NDEF消息507

26.13.2传输文件511

26.14小结513

第27章Android的网络开发技术514

27.1提交HTTP GET和HTTP POST请求514

27.2 HttpURLConnection类516

27.3上传文件517

27.4下载管理(DownloadManager)519

27.5 Wi-Fi Direct524

27.5.1 Wi-Fi Direct API的 核心部分524

27.5.2创建监听Wi-Fi Direct 动作的广播接收器524

27.5.3注册广播接收器525

27.5.4发现Wi-Fi Direct设备526

27.5.5连接Wi-Fi Direct设备526

27.5.6数据传输527

27.6 Internet电话(SIP)528

27.6.1使用SIP的要求和 限制528

27.6.2配置Android版SIP 电话528

27.6.3创建SipManager529

27.6.4注册SIP服务器529

27.6.5开始打电话530

27.6.6接听电话530

27.7小结531

第28章 并发与定时器532

28.1 Handler532

28.1.1更新UI532

28.1.2延迟执行535

28.2定时器537

28.2.1单秒循环的定时器:Chronometer537

28.2.2任意时间间隔的定时器: Timer538

28.2.3全局定时器:AlarmManager539

28.3 AsyncTask541

28.4小结543

第29章 异步装载(Loader)544

29.1 Loader简介544

29.2 Loader的核心类/接口544

29.3如何使用Loader545

29.3.1创建/重用Loader545

29.3.2遗弃旧的数据546

29.3.3 LoaderManager与方法回调546

29.3.4 创建Loader对象(onCreateLoader)547

29.3.5完成数据装载(onLoadFinished)547

29.3.6 Loader被重置(onLoaderReset)548

29.4异步装载联系人(CursorLoader的应用)548

29.5小结552

第30章Android推送技术553

30.1 IOS的推送方案553

30.2 Windows Phone的推送方案554

30.3 Android的推送方案554

30.4第三方推送服务:极光推送556

30.5自己搭建推送服务器:AndroidPN557

30.6小结558

第31章Android的多媒体开发技术559

31.1音频559

31.1.1音频播放559

31.1.2录制音频561

31.2视频563

31.2.1播放视频563

31.2.2录制视频564

31.3相机565

31.3.1调用系统的拍照功能565

31.3.2自定义拍照功能566

31.4铃声570

31.5小结572

第32章Android的2D绘图573

32.1绘制基本的图形573

32.1.1绘制像素点573

32.1.2绘制直线574

32.1.3绘制圆形574

32.1.4绘制圆弧574

32.1.5绘制文本575

32.1.6示例:绘制基本的图形和文本575

32.2绘制位图578

32.2.1绘制Bitmap对象578

32.2.2使用Drawable.draw方法绘制位图579

32.2.3示例:用两种方式绘制位图579

32.3设置图像的透明度580

32.4旋转图像581

32.5小结583

第33章3D绘图之OpenGL ES584

33.1 OpenGL ES简介584

33.2在3D空间中绘图585

33.2.1要绘制3D图形了,第一步要做什么585

33.2.2定义顶点587

33.2.3绘制三角形588

33.2.4三角形合并法绘制矩形590

33.2.5顶点法绘制矩形592

33.2.6顶点的选取顺序592

33.2.7索引法绘制矩形593

33.2.8基于OpenGL ES的动画原理594

33.2.9旋转的矩形594

33.3视图595

33.3.1有趣的比喻:照相机拍照596

33.3.2模型变换:立方体 旋转597

33.3.3用gluLookAt方法变换视图599

33.4颜色600

33.5小结602

第34章Android的桌面上的“尤物”603

34.1窗口小部件(App Widget)603

34.1.1在Android桌面上添加 App Widget603

34.1.2开发App Widget的 步骤603

34.1.3数字时钟605

34.1.4 AppWidgetProvider类607

34.1.5向App Widget添加配置 窗口608

34.1.6可以选择风格的数字时钟608

34.2动态壁纸(随机变换的圆圈)612

34.3小结618

第35章Android中的短信(SMS)与彩信(MMS)开发技术619

35.1通过系统程序发短信619

35.2直接发送短信619

35.3保存短信发送记录620

35.4监听短信和彩信621

35.5显示视频缩略图622

35.6彩信内容与SMIL协议624

35.7小结631

第36章Android的传感器开发技术632

36.1如何使用传感器632

36.2加速度传感器 (Accelerometer)635

36.3重力传感器(Gravity)635

36.4光线传感器(Light)636

36.5陀螺仪传感器(Gyroscope)636

36.5方向传感器(Orientation)637

36.6其他传感器638

36.7小结638

第37章Android的全球定位系统(GPS)639

37.1 GPS的核心API639

37.2获取位置提供者 (LocationProvider)641

37.2.1获取所有可用的 LocationProvider641

37.2.2根据名称获取 LocationProvider642

37.2.3根据条件(Criteria)获取 LocationProvider642

37.3实时获取GPS定位数据643

37.4测量地球上任意两点之间的距离645

37.5邻近警告646

37.6小结647

第38章 谷歌地图(Google Map)开发应用648

38.1 Google Map的跨平台解决方案:Maps JavaScript API v3648

38.2 Google Map的显示与定位648

38.3在Google Map上插入图像标志651

38.4插入多个图像标志653

38.5带阴影的位置坐标信息653

38.6地图与Java交互655

38.7小结657

第39章Android中的人机交互设计658

39.1手势(Gesture)658

39.1.1创建手势文件658

39.1.2通过手势输入字符串658

39.1.3通过手势调用程序660

39.1.4编写自己的手势创建器661

39.2多点触摸与放大/缩小操作662

39.3语音识别664

39.4让手机说话(TTS)665

39.5小结666

第40章Android中的输入法开发667

40.1 Android输入法简介667

40.2控制输入法668

40.3输入法实战669

40.3.1实现输入法的步骤669

40.3.2编写输入法程序669

40.3.3输入法服务的生命周期672

40.3.4预输入文本672

40.3.5输入法设置673

40.4小结673

第41章Android NDK开发674

41.1 Android NDK简介674

41.2安装、配置和测试NDK开发674

环境674

41.2.1系统和软件要求675

41.2.2下载和安装 Android NDK675

41.2.3下载和安装Cygwin675

41.2.4配置Android NDK的 开发环境677

41.3利用NDK Samples学习NDK开发678

41.3.1编译NDK Samples678

41.3.2 NDK程序的结构与命名 规则678

41.4 Android NDK配置文件详解679

41.4.1 Android NDK定义的变量680

41.4.2 Android NDK定义的 函数680

41.4.3描述模块的变量681

41.4.4配置Application.mk 文件682

41.5第一个NDK示例:字母的大小写转换682

41.5.1编写NDK程序682

41.5.2编写调用NDK函数的Java程序684

41.5.3在Eclipse中开发和编译NDK程序684

41.6 NDK程序读取Java字段值686

41.7小结687

第42章Android的测试驱动开发(TDD)688

42.1 JUnit测试框架688

42.2测试Activity688

42.3测试Content Provider691

42.4测试Service692

42.5测试普通类692

42.6小结693

第43章Android应用的性能优化694

43.1性能优化的基础知识694

43.2编写Java程序的最优化原则695

43.2.1用静态工厂方法代替 构造方法695

43.2.2避免创建重复的对象695

43.2.3防止内存泄漏697

43.2.4返回零长度的集合而不是 null697

43.2.5通过接口引用对象698

43 .3避免ANR698

43.4执行时间测试699

43.5内存消耗测试700

43.6测试性能的工具:traceview701

43.7小结702

第44章 游戏项目实战:笑脸连连看703

44.1游戏玩法703

44.2准备图像素材703

44.3实现主界面704

44.4随机生成连连看图像705

44.5选中两个相同图像后消失705

44.6用定时器限制游戏时间706

44.7小结707

第45章 开源项目实战:NFC侠(NFCMan)708

45.1什么是NFCMan708

45.2用Android模拟器和非NFC设备测试NFC应用709

45.3 NFCMan的实现原理711

45.4实现服务端程序(NFCMan)711

45.4.1可视 化 S WT开发环境712

45.4.2创建NFC标签712

45.4.3描述虚拟NFC标签的 NFCTag类714

45.4.4保证虚拟NFC标签的 全局唯一715

45.4.5显示与保存虚拟NFC 标签716

45.4.6装载已经存在的虚拟 NFC标签719

45.4.7开启服务720

45.4.8处理客户端请求721

45.4.9保证虚拟Android设备全 局唯一723

45.4.10描述虚拟Android 设备724

45.4.11添加虚拟Android 设备725

45.4.12异常处理机制727

45.5客户端与服务端之间的数据管道(NFCManService)728

45.5.1与NFCMan交互(Socket 方式)728

45.5.2与ANFCMan交互(广播 方式)732

45.6客户端Library(ANFCMan)733

45.6.1 ANFCMan的数据结构和 异常类733

45.6.2 ANFCMan的入口类734

45.6.3模拟检测到NFC标签的 广播接收器734

45.6.4同时处理物理NFC标签 和虚拟NFC标签的窗口735

45.7测试ANFCMan(TestANFCMan)738

45.8小结739

热门推荐