当前位置:首页 > 工业技术
Android/OPhone  开发完全讲义
Android/OPhone  开发完全讲义

Android/OPhone 开发完全讲义PDF电子书下载

工业技术

  • 电子书积分:15 积分如何计算积分?
  • 作 者:李宁编著
  • 出 版 社:水利水电出版社
  • 出版年份:2010
  • ISBN:9787508475271
  • 页数:466 页
图书介绍:本书是国内第一本同时介绍Android和OPhone的经典著作,国内著名Android社区eoeandroid极力推荐。本书内容全面,详细讲解Android框架、Android用户接口、Android组件、Android的数据存储解决方案、Android的4种可跨平台通信的组件(Activity、Service、Broadcast和ContentProvider)、网络、绘图、多媒体、2D动画、OpenGL ES、资源、国际化、访问Android手机的硬件、实时壁纸、实时文件夹。
《Android/OPhone 开发完全讲义》目录

第一部分 准备篇——大军未动,粮草先行 2

第1章 Android入门 2

1.1 Android的基本概念 2

1.1.1 Android简介 2

1.1.2 Android的系统构架 4

1.2 Android开发环境的搭建 5

1.2.1开发Android程序需要些什么 5

1.2.2安装Android SDK 5

1.2.3安装Eclipse插件ADT 6

1.2.4测试ADT是否安装成功 6

1.3 Android SDK中的常用命令行工具 8

1.3.1启动和关闭ADB服务(adb start-server和adb kill-server) 8

1.3.2查询当前模拟器/设备的实例(adbdevices) 8

1.3.3安装、卸载和运行程序(adb install、adb uninstall和am) 8

1.3.4PC与模拟器或真机交换文件(adbpull和adb push) 9

1.3.5Shell命令 9

1.3.6创建、删除和浏览AVD设备(android) 10

1.3.7创建SD卡 10

1.4 PC上的Android 10

1.4.1 Android LiveCD 11

1.4.2 AndroidX86 11

1.5 Android的学习资源 12

1.6应用程序商店 12

1.6.1 Android Market 12

1.6.2 Mobile Market(MM) 12

1.6.3其他应用程序商店 13

1.7本章小结 13

第2章 第一个Android程序 14

2.1编写用于显示当前日期和时间的程序 14

2.1.1新建一个Android工程 14

2.1.2界面组件的布局 15

2.1.3编写实际代码 15

2.2调试程序 18

2.3签名和发布应用程序 18

2.3.1使用命令行方式进行签名 19

2.3.2使用ADT插件方式进行签名 19

2.4DDMS透视图 20

2.5本章小结 21

第二部分 基础篇——Android世界的精彩之旅 23

第3章 Android应用程序架构 23

3.1 Android应用程序中的资源 23

3.1.1资源存放在哪里 23

3.1.2资源的种类 23

3.1.3资源的基本使用方法 24

3.2 Android的应用程序组件 25

3.2.1活动(Activiry)组件 25

3.2.2服务(Service)组件 25

3.2.3广播接收者(Broadcast receivers)组件 26

3.2.4内容提供者(Content providers)组件 26

3.3 AndroidManifest.xml文件的结构 26

3.4本章小结 27

第4章 建立用户接口 28

4.1建立、配置和使用Activity 28

4.1.1建立和配置Activity 28

4.1.2Activity的生命周期 30

实例1:演示Activity的生命周期 31

4.2视图(view) 33

4.2.1视图简介 34

4.2.2使用XML布局文件控制视图 34

4.2.3在代码中控制视图 35

实例2:混合使用XML布局文件和代码来控制视图 37

4.2.4定制组件(Widget)的三种方式 39

实例3:定制组件——带图像的TextView 39

实例4:定制组件——带文本标签的 EditText 42

实例5:定制组件——可更换表盘的指针时钟 44

4.3使用AlertDialog类创建对话框 49

4.3.1Alert Dialog类简介 49

4.3.2【确认/取消】对话框 49

实例6:创建询问是否删除文件的【确认/取消】对话框 50

4.3.3带3个按钮的对话框 51

实例7:创建【覆盖/忽略/取消】对话框 51

4.3.4简单列表对话框 52

4.3.5单选列表对话框 53

4.3.6多选列表对话框 53

实例8:创建3种选择省份的列表对话框 54

4.3.7水平进度对话框和圆形进度对话框 58

实例9:水平进度对话框和圆形进度对话框演示 58

4.3.8自定义对话框 61

实例10:创建登录对话框 61

实例11:使用Activity托管对话框 63

实例12:创建悬浮对话框和触摸任何位置都可以关闭的对话框 64

4.4 Toast和Notificatio 67

4.4.1用Toast显示提示信息框 67

4.4.2Notification与状态栏信息 68

4.5菜单 70

4.5.1创建选项菜单 70

4.5.2设置与菜单项关联的图像和Activity 71

4.5.3响应选项菜单项单击事件的3种方式 71

4.5.4动态添加、修改和删除选项菜单 72

4.5.5创建带复选框和选项按钮的子菜单 73

4.5.6创建上下文菜单 74

4.5.7菜单事件 75

实例13:Activity菜单、子菜单、上下文 菜单演示 75

4.6布局 76

4.6.1框架布局(FrameLayout) 76

实例14:霓虹灯效果的TextView 77

4.6.2线性布局(LinearLayout) 78

实例15:利用LinearLayout将按钮放在屏幕的四角和中心位置 80

4.6.3相对布局(RelativeLayout) 81

实例16:利用RelativeLayout实现梅花效果的布局 81

4.6.4表格布局(TableLayout) 82

实例17:计算器按钮的布局 82

4.6.5绝对布局(AbsoluteLayout) 83

4.7本章小结 83

第5章 组件详解 84

5.1显示和编辑文本的组件 84

5.1.1显示文本的组件:TextView 85

实例18:在TextView中显示URL及不同字体大小、不同颜色的文本 86

实例19:带边框的TextView 88

5.1.2输入文本的组件:EditText 89

实例20:在EditText中输入特定的字符 90

实例21:按回车键显示EditText 91

5.1.3自动完成输入内容的组件:AutoCompleteTextView 92

5.2按钮与复选框组件 93

5.2.1普通按钮组件:Button 93

实例22:异形(圆形、五角星、螺旋形和箭头)按钮 94

5.2.2图像按钮组件:ImageButton 95

实例23:同时显示图像和文字的按钮 96

5.2.3选项按钮组件:RadioButton 96

5.2.4开关状态按钮组件:ToggleButton 97

5.2.5复选框组件:CheckBox 97

实例24:利用XML布局文件动态创建CheckBox 98

5.3日期与时间组件 100

5.3.1输入日期的组件:DatePicker 100

5.3.2输入时间的组件:TimePicker 100

实例25:DatePicker、TimePicker与TextView同步显示日期和时间 100

5.3.3显示时钟的组件:AnalogClock和DigitalClock 101

5.4进度条组件 102

5.4.1进度条组件:ProgressBar 102

5.4.2拖动条组件:SeekBar 103

实例26:改变ProgressBar和SeekBar的颜色 104

5.4.3评分组件:RatingBar 105

5.5其他重要组件 106

5.5.1显示图像的组件:ImageView 106

实例27:可显示图像指定区域的ImageView组件 107

实例28:动态缩放和旋转图像 108

5.5.2列表组件:ListView 109

实例29:可以单选和多选的ListView 111

实例30:动态添加、删除ListView列表项 112

实例31:改变ListView列表项选中状态的背景颜色 115

5.5.3封装ListView的Activity:ListActivity 116

实例32:使用SimpleAdapter建立复杂的列表项 116

实例33:给应用程序评分 117

5.5.4可展开的列表组件:ExpandableListView 120

5.5.5下拉列表组件:Spinner 121

5.5.6垂直滚动视图组件:ScrollView 123

5.5.7水平滚动视图组件:HorizontalScrollView 123

实例34:可垂直和水平滚动的视图 124

5.5.8网格视图组件:GridView 124

5.5.9可循环显示和切换图像的组件:Gallery和ImageSwitcher 125

5.5.10标签组件:TabHost 127

5.6本章小结 128

第6章 移动存储解决方案 129

6.1最简单的数据存储方式:SharedPreferences 129

6.1.1使用SharedPreferences存取数据 129

6.1.2数据的存储位置和格式 131

实例35:存取复杂类型的数据 131

6.1.3设置数据文件的访问权限 133

6.1.4可以保存设置的Activity:PreferenceActivity 134

6.2文件的存储 137

6.2.1openFileOutput和openileInput方法 137

实例36:SD卡文件浏览器 138

实例37:存取SD卡中的图像 142

6.2.2 SAX引擎读取XML文件的原理 14

实例38:将XML数据转换成Java对象 144

6.3 SQLite数据库 14

6.3.1 SQLite数据库管理工具 147

6.3.2创建数据库和表 147

6.3.3模糊查询 149

6.3.4分页显示记录 149

6.3.5 事务 149

6.4在Android中使用SQLite数据库 149

6.4.1 SQLiteOpenHelper类与自动升级数据库 150

6.4.2 SimpleCursorAdapter类与数据绑定 150

实例39:带照片的联系人管理系统 153

6.4.3将数据库与应用程序一起发布 156

实例40:英文词典 156

6.5抽象的标准——内容提供者(ContentProvider) 155

实例41:将联系人管理和英文字典集成到自己的应用中 165

6.6本章小结 165

第7章 应用程序之间的通讯 166

7.1 Intent与Activity 166

7.1.1用Intent启动Activity,并在Activity之间传递数据 166

7.1.2调用其他应用程序中的Activity(拨打电话、浏览网页、发Email等) 169

7.1.3定制自己的Activity Action 172

实例42:将电子词典的查询功能共享成一个Activity Action 174

7.2接收和发送广播 175

7.2.1接收系统广播 175

实例43:开机可自动运行的程序 176

实例44:收到短信了,该做点什么 176

实例45:显示手机电池的当前电量 178

7.2.2在自己的应用程序中发送广播 179

实例46:接收联系人系统中发送的添加联系人广播 180

7.3本章小结 181

第8章 Android服务 182

8.1Service起步 182

8.1.1Service的生命周期 182

8.1.2绑定Activity和Service 185

8.1.3在BroadcastReceiver中启动Service 187

8.2系统服务 188

8.2.1获得系统服务 188

实例47:监听手机来电 189

实例48:来电黑名单 190

8.2.2在模拟器上模拟重力感应 191

实例49:手机翻转静音 192

8.3时间服务 194

8.3.1计时器:Chronometer 194

8.3.2预约时间Handler 196

8.3.3定时器Timer 197

8.3.4在线程中更新GUI组件 198

8.3.5全局定时器AlarmManager 200

实例50:定时更换壁纸 201

实例51:多次定时提醒 203

8.4跨进程访问(AIDL服务) 205

8.4.1什么是AIDL服务 206

8.4.2建立AIDL服务的步骤 206

实例52:建立AIDL服务 206

实例53:传递复杂数据的AIDL服务 209

8.5本章小结 213

第9章 网络 214

9.1可装载网络数据的组件 214

实例54:将网络图像装载到ListView组件中 215

实例55:Google图像画廊(Gallery) 217

9.2 WebView组件 221

9.2.1用WebView组件浏览网页 221

实例56:手机浏览器 221

9.2.2用WebView组件装载HTML代码 222

实例57:将英文词典整合到Web页中(JavaScript调用Java方法) 224

9.3访问HTTP资源 225

9.3.1提交HTTP GET和HTTP POST请求 225

9.3.2HttpURLConnection类 227

实例58:上传文件 228

实例59:远程Apk安装器 231

9.3.3调用WebService 232

实例60:通过WebService查询产品信息 233

9.4本章小结 236

第10章 多媒体 237

10.1图形 237

10.1.1图形绘制基础 237

实例61:绘制基本的图形和文本 239

10.1.2绘制位图 243

实例62:用两种方式绘制位图 243

10.1.3设置颜色的透明度 244

实例63:可任意改变透明度的位图 245

10.1.4旋转图像 246

实例64:旋转动画 246

10.1.5扭曲图像 247

实例65:按圆形轨迹扭曲图像 248

10.1.6拉伸图像 251

实例66:拉伸图像演示 251

10.1.7路径 253

实例67:沿着路径绘制文本 256

实例68:可在图像上绘制图形的画板 258

10.2音频和视频 262

10.2.1使用MediaPlayer播放MP3文件 262

10.2.2使用MediaRecorder录音 263

10.2.3使用MedeoView播放视频 264

10.2.4使用SurfaceView播放视频 264

10.3本章小结 265

第三部分 进阶篇——深入Android世界的腹地 267

第11章2D动画 267

11.1帧(Frame)动画 267

AnimationDrawable与帧动画 267

实例69:通过帧动画方式播放Gif动画 269

实例70:播放帧动画的子集 271

11.2补间(Tween )动画 273

11.2.1移动补间动画 273

实例71:循环向右移动的EditText与上下弹跳的球 275

11.2.2缩放补间动画 277

实例72:跳动的心 277

11.2.3旋转补间动画 279

实例73:旋转的星系 279

11.2.4透明度补间动画 280

实例74:投掷炸弹 281

11.2.5振动效果 283

11.2.6自定义动画渲染器(Interceptor) 284

11.2.7以动画方式切换View的组件ViewFlipper 285

11.3本章小结 287

第12章OpenGL ES编程 288

12.1 OpenGL简介 288

12.2构建OpenGL ES的基本开发框架 289

12.3 2D图形绘制 290

12.3.1多边形 290

12.3.2颜色 292

12.3.3旋转 293

12.4 3D图形绘制 294

12.4.1旋转立方体 294

12.4.2在立方体上显示纹理 295

12.4.3光照下的立方体 296

12.4.4透明的立方体 298

12.5本章小结 298

第13章 资源、国际化与自适应 299

13.1 Android中的资源 299

13.1.1Android怎么存储资源 300

13.1.2资源的种类 300

13.1.3资源文件的命名 301

13.2定义和使用资源 301

13.2.1使用系统资源 301

13.2.2字符串(String)资源 302

13.2.3数组(Array)资源 303

13.2.4颜色(Color)资源 305

13.2.5尺寸(Dimension)资源 306

13.2.6类型(Style)资源 307

13.2.7主题(Theme)资源 308

13.2.8绘画(Drawable)资源 309

13.2.9动画(Animation)资源 310

13.2.10菜单(Menu)资源 310

13.2.11布局(Layout)资源 313

13.2.12属性(Attribute)资源 313

实例75:改进可显示图标的IconTextView组件 315

13.2.13 XML资源 316

13.2.14 RAW资源 317

13.2.15 ASSETS资源 317

13.3国际化和资源自适应 318

13.3.1对资源进行国际化 318

13.3.2Locale与国际化 320

13.3.3常用的资源配置 320

13.4本章小结 321

第14章 访问Android手机的硬件 322

14.1在手机上测试硬件 322

14.1.1安装Android USB驱动 322

14.1.2在手机上测试程序 324

14.1.3在手机上调试程序 324

14.2录音 325

14.3控制手机摄像头(拍照) 326

14.3.1调用系统的拍照功能 326

14.3.2实现自己的拍照Activity 328

14.4传感器在手机中的应用 332

实例76:电子罗盘 333

实例77:计步器 334

14.5 GPS与地图定位 335

14.5.1Google地图 336

14.5.2用GPS定位到当前位置 339

14.6WIFI 340

14.7本章小结 342

第15章 放在桌面上的小玩意 343

15.1窗口小部件(App Widget) 343

15.1.1在Android桌面上添加App Widget 343

15.1.2开发App Widget的步骤 344

实例78:数字时钟 346

15.1.3AppWidgetProvider类 348

15.1.4向AppWidget添加配置Activity 349

实例79:可以选择风格的数字时钟 349

15.2快捷方式 353

15.2.1向快捷方式列表中添加快捷方式 353

15.2.2直接将快捷方式放到桌面上 354

15.3实时文件夹(LiveFolder) 354

15.4本章小结 356

第16章 NDK编程 357

16.1Android NDK简介 357

16.2安装、配置和测试NDK开发环境 358

16.2.1系统和软件要求 358

16.2.2下载和安装Android NDK 358

16.2.3下载和安装Cygwin 359

16.2.4配置Android NDK的开发环境 361

16.2.5编译和运行NDK自带的例子 362

16.3 Android NDK开发 364

16.3.1JNI接口设计 364

16.3.2编写Android NDK程序的步骤 365

实例80:将文件中的小写字母转换成大写字母(NDK版本) 365

16.3.3配置Android.mk文件 367

16.3.4 Android NDK定义的变量 368

16.3.5 Android NDK定义的函数 369

16.3.6描述模块的变量 369

16.3.7配置Application.mk文件 370

16.4本章小结 371

第17章 整合Android与脚本语言 372

17.1 Android脚本环境简介 372

17.2 Android脚本环境安装 373

17.3编写和运行Android脚本 374

17.4本章小结 376

第18章 Android平台的新特性展示 377

18.1 Android平台的新特性 377

18.1.1 Android 1.6的新特性 377

18.1.2 Android 2.0的新特性 379

18.2 Android Framework API演变 379

18.2.1 Android 1.6 Framework API的变化 379

18.2.2 Android 2.x Framework API的变化 380

18.3实时壁纸(Live Wallpapers,Android2.1) 380

18.4补间动画渲染器(Android1.6) 387

18.4.1 Anticipate渲染器 388

18.4.2 Overshoot渲染器 388

18.4.3 Anticipate/Overshoot渲染器 388

18.4.4 Bounce渲染器 388

18.5本章小结 389

第19章 另类的输入输出 390

19.1手势(Gesture) 390

19.1.1创建手势文件 390

19.1.2通过手势输入字符串 391

19.1.3通过手势调用程序 393

19.1.4编写自己的手势创建器 394

19.2让手机说话(TTS) 395

19.3本章小结 396

第20章 蓝牙 397

20.1蓝牙简介 397

20.2打开和关闭蓝牙设备 398

20.3搜索蓝牙设备 398

20.4蓝牙Socket 400

20.5OBEX服务器 402

20.6本章小结 403

第四部分 OPhone篇——进入OPhone世界 405

第21章 OPhone入门 405

21.1 OPhone平台概述 405

21.1.1 OPhone的系统架构 405

21.1.2 JIL Widget的运行环境 406

21.1.3 OPhone应用程序展示 406

21.2 OPhone开发环境搭建 407

21.2.1安装ODT和WDT 407

21.2.2测试一下ODT是否安装成功 407

21.2.3测试一下WDT是否安装成功 407

21.3在真机上调试程序 408

21.4本章小结 410

第22章 OPhone的APl扩展 411

22.1视频电话 411

22.1.1拨打视频电话 411

22.1.2挂断视频电话 411

实例81:可拨打视频电话的程序 412

22.2搜索API 413

22.3本章小结 414

第23章JlL Widget开发详解 415

23.1编写第一个JIL Widget程序 415

23.2多媒体 417

23.2.1播放音频 417

23.2.2播放视频 418

23.3操作文件 418

23.3.1获得与文件相关的信息 419

23.3.2操作文件 419

23.3.3操作文件夹 421

23.4获得系统信息 422

23.4.1获得电池信息 422

23.4.2获得手机信号信息 423

23.4.3获得设备信息 424

23.4.4获得设备状态信息 424

23.5控制硬件 425

23.5.1拍照和摄像 426

23.5.2打电话 426

23.5.3手机振动 426

23.6本章小结 427

第五部分 综合实例篇——实践是检验真理的唯一标准 429

第24章 万年历 429

24.1主界面设计与实现 429

24.1.1万年历的核心类:Calendar 429

24.1.2日历内容元素的基类:CalendarParent 431

24.1.3绘制万年历边框:Border类 431

24.1.4绘制周名称:Week类 432

24.1.5绘制日期和网格:Grid类 433

24.1.6日历视图:CalendarView类 440

24.1.7生成万年历的主界面 442

24.2选项菜单功能 443

24.2.1切换到今天的日期 443

24.2.2指定日期 443

24.3可以写日记和提醒的万年历 444

24.3.1显示所有的记录信息:AllRecord类 444

24.3.2添加和修改记录:Record类 446

24.3.3设置提醒时间 447

24.3.4启动服务 448

24.3.5在广播接收器中显示提醒界面 449

24.3.6访问数据库:DBService 450

24.4本章小结 454

第25章 知道当前位置的Google GTalk机器人 455

25.1 GTalk的通讯协议和技术 455

25.1.1 Jabber和XMpp 455

25.1.2 XMPP客户端库:Smack和Asmack 456

25.2登录GTalk: Login类 456

25.3联系人信息 458

25.3.1显示联系人列表 458

25.3.2监听联系人是否上线 460

25.4联系人之间的通讯 461

25.4.1发送聊天信息 462

25.4.2接收聊天信息 462

25.4.3自动回复当前的位置(GPS定位) 465

25.5 本章小结 466

相关图书
作者其它书籍
返回顶部