上篇Android开发技术基础 1
第1章Android概述 1
1.1智能手机操作系统现状 1
1.1.1 Linux系统 1
1.1.2 Windows Mobile系统 2
1.1.3 Symbian系统 2
1.1.4 iOS系统 3
1.1.5 BlackBerry系统 3
1.1.6 Palm系统 4
1.2 Android系统简介 4
1.2.1开放手机联盟 4
1.2.2 Android的特性 5
1.2.3 Android与其他主流操作系统的对比 6
1.3 Android系统构架 7
1.4 Android应用程序组件 8
1.4.1 Activity活动程序 8
1.4.2 Service服务程序 9
1.4.3 BroadcastReceiver广播接收器 9
1.4.4 ContentProvider内容提供器 10
1.4.5 Intent激活组件 10
1.4.6 View视图组件 11
1.5 Android Market应用程序市场 11
1.6 Android国内衍生版本 12
1.6.1 Ophone 12
1.6.2 Lephone 13
1.6.3点心OS 13
1.7小结 14
第2章 搭建Android开发环境 15
2.1 Android开发环境要求 15
2.2如何搭建Android开发环境 16
2.2.1安装JDK 16
2.2.2安装Eclipse 18
2.2.3安装Android SDK 19
2.2.4安装ADT插件 21
2.2.5安装Eclipse中文插件 25
2.3 Android模拟器AVD 26
2.3.1创建AVD 27
2.3.2运行AVD 29
2.3.3 AVD界面及基本操作 30
2.3.4 AVD与手机的区别 32
2.4 Android开发常用工具及命令 33
2.4.1 ADB工具 33
2.4.2 DDMS工具 34
2.4.3 AAPT工具 36
2.4.4 Mksdcard工具 36
2.4.5 DX工具 36
2.4.6 Android Monkey工具 36
2.4.7 Traceview工具 37
2.5小结 37
第3章Android开发起步 38
3.1创建第一个Android程序 38
3.2通过模拟器运行Android程序 40
3.3 Android程序结构分析 41
3.3.1 src目录 42
3.3.2 gen目录 42
3.3.3 android.jar文件 43
3.3.4 res目录和assets目录 43
3.3.5 AndroidManifest.xml文件 44
3.4 Android生命周期 45
3.4.1进程优先级 45
3.4.2 Activity的生命周期 46
3.4.3 Service的生命周期 50
3.4.4 BroadcastReceiver的生命周期 50
3.5小结 51
下篇Android API详解 52
第4章Android应用程序资源 52
4.1 Manifest.permission类:应用程序权限 52
4.1.1什么是应用程序权限 52
4.1.2 Android应用程序权限 53
4.1.3 Android应用程序权限示例 56
4.2 Manifest.permissiongroup类:应用程序权限组 57
4.3 R类:资源类 58
4.3.1 R.string类:字符串资源 58
4.3.2 R.color类:颜色资源 59
4.3.3 R.layout类:布局资源 60
4.3.4 R.drawable类:绘图资源 61
4.3.5 R.id类:1D资源 65
4.4小结 67
第5章Android控件 68
5.1 TextView类:文本框 68
5.1.1 append方法:追加文字 68
5.1.2 addTextChangedListener方法:添加文本更改监听器 69
5.1.3 setText方法:设置文本 70
5.1.4 setTextSize方法:设置字体大小 71
5.1.5 setTextColor方法:设置字体颜色 72
5.1.6 setTypeface方法:设置字体样式 73
5.1.7 setBackgroundColor方法:设置背景颜色 73
5.1.8 setHeight方法:设置文本框高度 74
5.1.9 getCurrentTextColor方法:获取当前字体颜色 75
5.1.10 getText方法:获取文本框内容 76
5.1.11 getHeight方法:获取文本框高度 77
5.1.12 getWidth方法:获取文本框宽度 77
5.1.13 setPadding方法:设置内边距 78
5.1.14 getPaddingLeft方法:获取文本框左侧内边距 79
5.1.15 getPaddingTop方法:获取文本框上部内边距 79
5.1.16 getPaddingRight方法:获取文本框右侧内边距 80
5.1.17 getPaddingBottom方法:获取文本框下部内边距 80
5.2 Button类:按钮 81
5.2.1 setOnClickListener方法:设置按钮监听器 81
5.2.2 setOnLongClickListener方法:设置长按监听器 81
5.2.3 setOnFocusChangeListener方法:设置焦点改变监听器 82
5.2.4 setOnTouchListener方法:设置触摸监听器 83
5.2.5 setPressed方法:设置按下状态 84
5.2.6 setClickable方法:设置是否可按 85
5.2.7 setLongClickable方法:设置是否可长按 85
5.3 EditText类:编辑框 86
5.3.1 setText方法:设置文本内容 86
5.3.2 getText方法:获取显示内容 87
5.3.3 setSelection方法:设置文本选择 88
5.3.4 setHint方法:设置提示信息 89
5.3.5 setOnKeyListener方法:设置按键监听器 89
5.4 DatePicker类:日期选择 91
5.4.1 init方法:初始化控件 91
5.4.2 OnDateChangedListener方法:日期更改监听器 91
5.4.3 updateDate方法:更新日期 92
5.4.4 getYear方法:获取年份 93
5.4.5 getMonth方法:获取月份 93
5.4.6 getDayOfMonth方法:获取日数 93
5.5 TimePicker类:时间选择 94
5.5.1 setCurrentHour方法:设置当前小时 95
5.5.2 setCurrentMinute方法:设置当前分钟 95
5.5.3 setls24HourView方法:设置是否24小时制 95
5.5.4 setOnTimeChangedListener方法:设置时间更改监听器 96
5.5.5 getCurrentHour方法:获取当前小时 97
5.5.6 getCurrentMinute方法:获取当前分钟 97
5.5.7 is24HourView方法:获取是否为24小时制 97
5.6 ProgressBar类:进度条 98
5.6.1 setMax方法:设置最大值 99
5.6.2 setProgress方法:设置主要进度 99
5.6.3 setSecondaryProgress方法:设置次要进度 99
5.6.4 getMax方法:获取最大值 99
5.6.5 getProgress方法:获取主要进度 100
5.6.6 getSecondaryProgress方法:获取次要进度 100
5.7 SeekBar类:滑块 100
5.8 RatingBar类:星级滑块 102
5.8.1 setMax方法:设置最大值 102
5.8.2 setNumStars方法:设置星型数量 102
5.8.3 setRating方法:设置分数 102
5.8.4 setStepSize方法:设置步长 103
5.8.5 setOnRatingBarChangeListener方法:设置监听器 103
5.8.6 getNumStars方法:获取星型数量 104
5.8.7 getRating方法:获取分数 104
5.8.8 getStepSize方法:获取步长 104
5.8.9 setIsIndicator方法:设置指示器 105
5.8.10 isIndicator方法:判断是否为指示器 106
5.9 ToggleButton类:状态开关按钮 106
5.9.1 setTextOff方法:设置未选中时的文本 106
5.9.2 setTextOn方法:设置选中时的文本 106
5.9.3 setChecked方法:设置按钮状态 106
5.9.4 setBackgroundDrawable方法:设置背景 107
5.9.5 setOnCheckedChangeListener方法:设置监听器 108
5.9.6 getTextOff方法:获取未选中时的文本 108
5.9.7 getTextOn方法:获取选中时的文本 108
5.10 Toast类:弹出信息框 109
5.10.1 cancel方法:关闭Toast视图 110
5.10.2 getDuration方法:获取持续时间 110
5.10.3 getGravity方法:获取Toast视图的显示位置 111
5.10.4 getHorizontalMargin方法:获取水平方向的页边空白 111
5.10.5 getVerticalMargin方法:获取垂直方向的页边空白 112
5.10.6 makeText方法:生成标准Toast对象 112
5.10.7 setView方法:设置显示的View对象 113
5.10.8 getView方法:获取View对象 114
5.10.9 setGravity方法:设置显示位置 114
5.10.10 getXOffset方法:获取水平方向偏移量 115
5.10.11 getYOffset方法:获取垂直方向偏移量 115
5.10.12 setDuration方法:设置持续时间 116
5.10.13 setMargin方法:设置页边空白 117
5.10.14 setText方法:设置显示的文本内容 117
5.10.15 show方法:显示提示信息 118
5.11 CheckBox类:复选框 119
5.11.1 isChecked方法:是否选中 119
5.11.2 setChecked方法:设置复选框状态 120
5.11.3 toggle方法:切换状态 120
5.11.4 setOnCheckedChangeListener方法:设置监听器 121
5.12 RadioButton类和RadioGroup类:单选框 123
5.12.1 setOnCheckedChangeListener方法:设置监听器 123
5.12.2 check方法:选中选项 124
5.12.3 clearCheck方法:清空选项 125
5.13 ImageView类:图片 126
5.13.1 setImageResource方法:设置图片资源 126
5.13.2 setImageDrawable方法:设置Drawable图片资源 127
5.13.3 setAlpha方法:设置透明度 127
5.13.4 setScaleType方法:设置填充方式 128
5.13.5 getDrawable方法:获取Drawable对象 129
5.13.6 getScaleType方法:获取填充方式 129
5.14 Spinner类:下拉列表 129
5.14.1 setAdapter方法:设置适配器 130
5.14.2 setPrompt方法:设置标题 130
5.14.3 setPromptId方法:指定标题 131
5.14.4 getPrompt方法:获取标题 131
5.14.5 setOnItemSelectedListener方法:设置监听器 132
5.15 AutoCompleteTextView类:自动完成文本框 133
5.15.1 setAdapter方法:设置适配器 134
5.15.2 setThreshold方法:设置匹配字符数 134
5.15.3 setCompletionHint方法:设置提示信息 135
5.15.4 setDropDownBackgroundResource方法:设置背景资源 136
5.15.5 setDropDownBackgroundDrawable方法:设置Drawable背景资源 136
5.15.6 setDropDownWidth方法:设置宽度 137
5.15.7 setDropDownHeight方法:设置高度 137
5.15.8 setOnItemClickListener方法:设置监听器 138
5.15.9 getThreshold方法:获取匹配字符数 138
5.15.10 getDropDownWidth方法:获取宽度 139
5.15.11 getDropDownHeight方法:获取高度 139
5.16 Gallery类:画廊 139
5.16.1 setAdapter方法:设置适配器 139
5.16.2 setSpacing方法:设置图片间距 140
5.16.3 setOnItemClickListeiner方法:设置监听器 142
5.16.4 setGraviry方法:设置图片对齐方式 143
5.16.5 setAnimationDuration方法:设置动画切换时间 144
5.17小结 145
第6章Android菜单和对话框 146
6.1 Menu类:菜单 146
6.1.1 onCreateOptionsMenu方法:初始化选项菜单 146
6.1.2 add方法:添加菜单项 146
6.1.3 addSubMenu方法:添加子菜单项 147
6.1.4 onOptionsItemSelected方法:选中菜单处理 148
6.1.5 onOptionsMenuClosed方法:选项菜单关闭处理 149
6.2 Menultem类:菜单项 150
6.2.1 getItemId方法:获取菜单项ID 151
6.2.2 getTitle方法:获取标题 151
6.2.3 getOrder方法:获取顺序 151
6.2.4 setIcon方法:设置图标 152
6.2.5 setAlphabeticShortcut方法:设置字母快捷键 152
6.2.6 setNumericShortcut方法:设置数字快捷键 154
6.2.7 setShortcut方法:设置快捷键 155
6.2.8 setOnMenuItemClickListener方法:设置监听器 155
6.3 SubMenu类:子菜单 156
6.3.1 setIcon方法:设置图标 156
6.3.2 add方法:添加子菜单项 158
6.3.3 setOnMenultemClickListener方法:设置监听器 159
6.4 ContextMenu类:上下文菜单 160
6.4.1 registerForContextMenu方法:注册上下文菜单 161
6.4.2 onCreateContextMenu方法:初始化上下文菜单 161
6.4.3 onContextItemSelected方法:选中菜单处理 162
6.4.4 onContextMenuClosed方法:关闭上下文菜单处理 164
6.5 AlertDialog类:提示对话框 165
6.5.1 showDialog方法:显示对话框 166
6.5.2 onCreateDialog方法:初始化对话框 166
6.5.3 setTitle方法:设置标题 166
6.5.4 setMessage方法:设置提示信息 166
6.5.5 create方法:创建对话框 167
6.5.6 setIcon方法:设置图标 168
6.5.7 setPositiveButton方法:设置“确定”按钮 169
6.5.8 setNegativeButton方法:设置“取消”按钮 170
6.5.9 setNeutralButton方法:设置“中间”按钮 173
6.5.10 setItems方法:设置列表 174
6.5.11 setSingleChoiceItems方法:设置单选按钮 176
6.5.12 setMultiChoiceItems方法:设置复选框 178
6.6 DatePickerDialog类:日期选择对话框 180
6.7 TimePickerDialog类:时间选择对话框 182
6.8 ProgressDialog类:进度条对话框 183
6.8.1 setMax方法:设置最大值 183
6.8.2 setTitle方法:设置标题 184
6.8.3 setProgressStyle方法:设置进度条样式 184
6.8.4 incrementProgressBy方法:设置递增步长 184
6.8.5 getprogress方法:获取当前进度值 184
6.8.6 onPrepareDialog方法:准备对话框 186
6.8.7 setCancelable方法:设置是否可以取消 188
6.9小结 190
第7章Android应用程序模型 191
7.1 Activity类:活动程序 191
7.1.1 setContentView方法:设置显示的View 191
7.1.2 fiinish方法:关闭Activity 192
7.1.3 startActivity方法:启动一个Activity 192
7.1.4 setTitle方法:设置标题 193
7.1.5 setTitleColor方法:设置标题颜色 195
7.1.6 onKeyDown方法:响应按键按下 196
7.1.7 onKeyUp方法:响应按键弹起 197
7.1.8 onTouchEvent方法:响应触摸事件 199
7.1.9 onCreate方法:初始化Activity 199
7.1.10 onStart方法:启动Activity 200
7.1.11 onResume方法:恢复Activity 200
7.1.12 onPause方法:暂停Activity 201
7.1.13 onStop方法:停止Activity 201
7.1.14 onRestart方法:重新启动Activity 201
7.1.15 onDestroy方法:销毁Activity 202
7.2 Intent类:激活组件 205
7.2.1 setComponent方法:设置组件名称 206
7.2.2 setClasss方法:设置查找的类 206
7.2.3 setClassName方法:设置查找的类名称 207
7.2.4 getIntent方法:获取Intent对象 208
7.2.5 getComponent方法:获取组件名称 208
7.2.6 setAction方法:设置Action 210
7.2.7 getAction方法:获取Action 210
7.2.8 addCategory方法:添加附加信息 212
7.2.9 putExtra方法:设置扩展信息 213
7.2.10 getStringExtra方法:获取扩展信息 214
7.2.11 setData方法:设置数据 216
7.3 BroadcastReceiver类:广播接收器 217
7.3.1 sendBroadcast方法:发送广播 217
7.3.2 onReceive方法:接收广播 218
7.3.3 registerReceiver方法:注册广播接收器 219
7.3.4 unregisterReciver方法:销毁广播接收器 220
7.4 Notifiication类:通知 221
7.4.1 setLatestEventInfo方法:设置事件信息 222
7.4.2 notify方法:发出通知 222
7.4.3 cancel方法:取消通知 222
7.5 AlannManager类:闹钟 224
7.5.1 set方法:设置提醒 224
7.5.2 setRepeating方法:设置精确重复提醒 226
7.5.3 setInexactRepeating方法:设置不精确的重复提醒 228
7.5.4 cancel方法:取消提醒 229
7.6 Service类:服务 230
7.6.1 onBind方法:绑定服务 230
7.6.2 onCreate方法:创建服务 231
7.6.3 onDestroy方法:销毁服务 231
7.6.4 onStart方法:启动服务 231
7.6.5 startService方法:启动Service对象 232
7.6.6 stopService方法:停止Service对象 232
7.6.7 bindService方法:绑定Service 234
7.6.8 unbindService方法:解除绑定Service 235
7.7小结 237
第8章Android绘图 238
8.1 Paint类:画笔 238
8.1.1 setColor方法:设置颜色 238
8.1.2 setAlpha方法:设置透明度 240
8.1.3 setStyle方法:设置风格 240
8.1.4 setStrokeWidth方法:设置空心线宽 241
8.1.5 setTextSize方法:设置字体大小 242
8.1.6 setTypeface方法:设置字体样式 243
8.1.7 setTextScaleX方法:设置比例因子 244
8.1.8 setARGB方法:设置透明度和颜色 245
8.1.9 setUnderlineText方法:设置下画线 245
8.1.10 setTextSkewX方法:设置倾斜因子 246
8.2 Canvas类:画布 248
8.2.1 drawColor方法:设置背景颜色 248
8.2.2 drawLine方法:绘制直线 248
8.2.3 drawLines方法:绘制多条直线 249
8.2.4 drawLines方法:有选择地绘制多条直线 250
8.2.5 drawPoint方法:绘制点 251
8.2.6 drawPoints方法:绘制多个点 251
8.2.7 drawRect方法:绘制矩形 253
8.2.8 drawRoundRect方法:绘制圆角矩形 253
8.2.9 drawCircle方法:绘制圆形 255
8.2.10 drawOval方法:绘制椭圆形 255
8.2.11 drawPath方法:绘制任意多边形 257
8.2.12 drawArc方法:绘制圆弧 257
8.2.13 drawText方法:绘制字符串 258
8.2.14 drawBitmap方法:绘制图像 260
8.2.15 save方法:锁定画布 261
8.2.16 restore方法:解除锁定 261
8.2.17 clipRect方法:设置裁剪区 261
8.2.18 rotate方法:旋转画布 262
8.3小结 264
第9章Android动画效果 265
9.1 Animation类:动画抽象类 265
9.1.1 setDuration方法:设置持续时间 265
9.1.2 startNow方法:立刻启动动画 265
9.1.3 start方法:启动动画 266
9.1.4 cancel方法:取消动画 266
9.1.5 setRepeatCount方法:设置重复次数 268
9.1.6 setFillEnabled方法:使能填充效果 269
9.1.7 setFiliBefore方法:设置起始填充 269
9.1.8 setFillAfter方法:设置终止填充 270
9.1.9 setRepeatMode方法:设置重复模式 271
9.1.10 setStartOffset方法:设置启动时间 273
9.2 TranslateAnimation类:位置变化动画类 273
9.3 RotateAnimation类:旋转变化动画类 275
9.4 ScaleAnimation类:尺寸变化动画类 276
9.5 AlphaAnimation类:透明度变化动画类 277
9.6 AnimationSet类:动画集合类 278
9.7 AnimationUtils类:动画工具类 280
9.8 AnimationDrawable类:帧动画类 282
9.8.1 start方法:开始动画 282
9.8.2 stop方法:停止动画 283
9.8.3 addFrame方法:添加动画帧 285
9.8.4 setOneShot方法:设置播放方式 286
9.8.5 setAlpha方法:设置透明度 286
9.8.6 getNumberOfFrames方法:获取帧数 287
9.9小结 289
第10章Android数据库 290
10.1 SQLiteDatabase类:数据库对象 290
10.1.1 openOrCreateDatabase方法:打开或创建数据库 290
10.1.2 openDatabase方法:打开数据库 291
10.1.3 close方法:关闭数据库 292
10.1.4 execSQL方法:执行SQL语句 292
10.1.5 insert方法:插入数据 293
10.1.6 delete方法:删除数据 295
10.1.7 query方法:查询数据 297
10.1.8 update方法:更新数据 298
10.2 Cursor接口:查询游标接口 300
10.2.1 close方法:关闭游标 300
10.2.2 getCount方法:获取数据条数 301
10.2.3 getColumnCount方法:获取列数量 303
10.2.4 getColumnIndex方法:获取列编号 304
10.2.5 getColumnIndexOrTbrow方法:获取列编号 305
10.2.6 getColumnName方法:获取列名称 306
10.2.7 getString方法:获取字符串内容 307
10.2.8 getDouble方法:获取双精度浮点型内容 308
10.2.9 getFloat方法:获取单精度浮点型内容 308
10.2.10 getInt方法:获取整型内容 308
10.2.11 getLong方法:获取长整型内容 308
10.2.12 getShort方法:获取短整型内容 309
10.2.13 getType方法:获取数据类型 309
10.2.14 moveToFirst方法:移动到第一行 309
10.2.15 moveToNext方法:移动到下一行 309
10.2.16 moveToLast方法:移动到最后一行 310
10.2.17 moveToPosition方法:移动到指定的位置 311
10.2.18 moveToPrevious方法:移动到前一行 312
10.2.19 move方法:移动到指定偏移位置 313
10.2.20 getPosition方法:获取当前位置 314
10.3小结 315
第11章Android多媒体 316
11.1 MediaPlayer类:多媒体播放 316
11.1.1 create方法:创建多媒体 316
11.1.2 start方法:开始播放 317
11.1.3 stop方法:停止播放 318
11.1.4 pause方法:暂停播放 319
11.1.5 reset方法:复位多媒体 320
11.1.6 setDataSource方法:设置数据源 321
11.1.7 prepare方法:准备播放 321
11.1.8 seekTo方法:指定播放位置 323
11.1.9 getDuration方法:获取文件播放时间 324
11.1.10 setVolume方法:设置音量 326
11.1.11 setLooping方法:设置循环播放 328
11.1.12 getCurrentPosition方法:获取当前播放位置 330
11.1.13 isLooping方法:获取是否循环播放 330
11.1.14 isPlaying方法:获取是否播放 331
11.1.15 setOnCompletionListener方法:设置播放完成监听器 331
11.1.16 setOnSeekCompleteListener方法:设置寻址完成监听器 332
11.1.17 setOnPreparedListener方法:设置准备完毕监听器 334
11.1.18 setOnErrorListener方法:设置错误监听器 335
11.1.19 setOnBufferingUpdateListener方法:设置缓冲监听器 335
11.1.20 release方法:释放多媒体 335
11.2 VideoView类:视频播放 335
11.2.1 setMediaController方法:设置播放控制器 335
11.2.2 setVideoPath方法:设置视频源路径 336
11.2.3 start方法:开始播放 336
11.2.4 pause方法:暂停播放 337
11.2.5 setVideoURI方法:设置视频源地址 338
11.2.6 setVisibility方法:设置是否可见 339
11.2.7 getDuration方法:获取视频播放时间 341
11.2.8 setOnCompletionListener方法:视频播放完成监听器 342
11.2.9 setOnPreparedListener方法:视频准备完毕监听器 344
11.2.10 setOnErrorListener方法:视频播放错误监听器 344
11.2.11 seekTo方法:指定视频播放位置 344
11.2.12 getCun entPosition方法:获取当前视频播放位置 346
11.2.13 getBufferPercentage方法:获取缓冲百分比 347
11.2.14 stopPlayback方法:停止回放视频 347
11.2.15 isPlaying方法:获取是否播放 348
11.2.16 canPause方法:获取是否可以暂停 348
11.2.17 canSeekBackward方法:获取是否可以倒退 348
11.2.18 canSeekForward方法:获取是否可以快进 348
11.2.19 suspend方法:挂起视频播放 350
11.2.20 resume方法:恢复视频播放 350
11.3 MediaRecorder类:录音 352
11.3.1让模拟器支持录音 352
11.3.2 setAudioSource方法:设置音频源 354
11.3.3 setOutputFormat方法:设置输出文件格式 354
11.3.4 setAudioEncoder方法:设置音频编码 355
11.3.5 setOutputFile方法:设置输出文件 355
11.3.6 prepare方法:准备录制 355
11.3.7 start方法:开始录制 356
11.3.8 stop方法:停止录制 356
11.3.9 release方法:释放对象 358
11.3.10 reset方法:复位对象 359
11.3.11 setOnInfoListener方法:设置信息监听器 359
11.3.12 setMaxFileSize方法:设置文件的最大大小 359
11.3.13 setMaxDuration方法:设置最大录制时间 361
11.3.14 setOnErrorListener方法:设置错误监听器 363
11.3.15 setAudioChannels方法:设置声道数量 363
11.3.16 setAudioEncodingBitRate方法:设置编码比特率 363
11.3.17 setAudioSamplingRate方法:设置采样比特率 363
11.4小结 365
第12章Android照相机 366
12.1 Camera类:照相机 366
12.1.1 open方法:打开照相机 367
12.1.2 takePicture方法:拍照 367
12.1.3 release方法:释放照相机 367
12.1.4 PictureCallback方法:照片回调函数 368
12.1.5 ShutterCallback方法:拍照回调函数 369
12.1.6 getNumberOfCameras方法:获取照相机数量 371
12.1.7 startPreview方法:开始预览 372
12.1.8 stopPreview方法:停止预览 373
12.1.9 setPreviewDisplay方法:设置预览 373
12.1.10 getParameters方法:获取相机参数 375
12.1.11 setParameters方法:设置相机参数 375
12.1.12 autoFocus方法:设置自动对焦 377
12.1.13 cancelAutoFocus方法:取消自动对焦 378
12.1.14 unlock方法:解锁相机 378
12.1.15 reconnect方法:重新连接相机 378
12.1.16 startSmoothZoom方法:开始变焦 378
12.2 Camera.Parameters类:照相机参数 379
12.2.1 getSupportedPictureSizes方法:获取支持的图片大小 379
12.2.2 getMaxExposureCompensation方法:获取最大曝光补偿指数 380
12.2.3 getMaxZoom方法:获取最大变焦值 381
12.2.4 getMinExposureCompensation方法:获取最低曝光补偿指数 382
12.2.5 getPictureFormat方法:获取图片格式 383
12.2.6 getPictureSize方法:获取当前照片尺寸 385
12.2.7 getPreviewFormat方法:获取预览格式 385
12.2.8 getPreviewSize方法:获取预览尺寸 387
12.2.9 getSupportedColorEffects方法:获取支持的色彩效果列表 388
12.2.10 getSupportedFlashModes方法:获取支持的闪光灯模式列表 389
12.2.11 getSupportedFocusModes方法:获取支持的对焦模式列表 390
12.2.12 getSupportedJpegThumbnailSizes方法:获取支持的JPEG缩略图尺寸 392
12.2.13 getSupportedPictureFormats方法:获取支持的图片格式列表 393
12.2.14 getSupportedPreviewFormats方法:获取支持的预览格式列表 394
12.2.15 getSupportedPreviewSizes方法:获取支持的预览大小 395
12.2.16 getSupportedSceneModes方法:获取支持的场景模式 396
12.2.17 getSupportedWhiteBalance方法:获取支持的白平衡 397
12.2.18 getWhiteBalance方法:获取当前白平衡设置 399
12.2.19 getZoom方法:获取当前变焦值 400
12.2.20 isZoomSupported方法:获取是否支持变焦 402
12.2.21 isSmoothZoomSupported方法:获取是否支持平滑变焦 403
12.2.22 getColorEffect方法:获取当前色彩效果 404
12.2.23 getFlashMode方法:获取当前闪光灯模式 406
12.2.24 getFocalLength方法:获取焦距 408
12.2.25 getFocusMode方法:获取当前对焦模式 409
12.2.26 getSceneMode方法:获取当前场景模式 411
12.3小结 414
第13章Android语音朗读 415
13.1 TextToSpeech类:文本朗读 415
13.1.1 TextToSpeech方法:构造方法 415
13.1.2 shutdown方法:释放引擎 416
13.1.3 speak方法:朗读文本 416
13.1.4 stop方法:停止播放 418
13.1.5 isSpeaking方法:是否正在朗读 419
13.1.6 synthesizeToFile方法:保存朗读文件 421
13.1.7 setLanguage方法:设置朗读语言 422
13.1.8 getLanguage方法:获取语言 424
13.1.9 isLanguageAvailable方法:语言是否可用 426
13.1.10 setSpeechRate方法:设置语速 428
13.1.11 setOnUtteranceCompletedListener方法:设置播放完成监听器 430
13.1.12 addSpeech方法:关联音频文件 432
13.1.13 setPitch方法:设置音调 433
13.1.14 addEarcon方法:关联事件音频文件 435
13.1.15 playEarcon方法:播放关联文件 436
13.1.16 playSilence方法:静默朗读 437
13.2小结 439
第14章Android系统信息 440
14.1 build类:构建信息 440
14.1.1 MODEL方法:手机型号 440
14.1.2 SDK方法:SDK版本号 441
14.1.3 SDK INT方法:SDK版本号 443
14.1.4 RELEASE方法:获取系统版本 443
14.1.5 BOOTLOADER方法:bootloader版本号 444
14.1.6 BOARDD方法:底层板名称 445
14.1.7 BRAND方法:品牌 445
14.1.8 CPU_ABI方法:指令集 446
14.1.9 CPU_ABI2方法:第二指令集 447
14.1.10 DEVICE方法:工业设计名称 448
14.1.11 DISPLAY方法:显示 448
14.1.12 FINGERPRINT方法:构建的唯一标识符 449
14.1.13 HARDWARE方法:硬件名称 450
14.1.14 HOST方法:主机 451
14.1.15 ID方法:ID标签 452
14.1.16 MANUFACTURER方法:制造商 453
14.1.17 PRODUCT方法:产品名称 454
14.1.18 RADIO方法:无线电固件版本号 455
14.1.19 SERIAL方法:硬件序列号 455
14.1.20 TAGS方法:标签 456
14.1.21 TIME方法:出厂时间 456
14.1.22 TYPE方法:构建类型 457
14.1.23 USER方法:构建用户名称 458
14.1.24 CODENAME方法:开发代号 459
14.1.25 INCREMENTAL方法:构建增量 460
14.2 Environment类:环境变量类 461
14.2.1 getDataDirectory方法:获取数据目录 461
14.2.2 getDownloadCacheDirectory方法:获取下载缓存目录 462
14.2.3 getExtemalStorageDirectory方法:获取外部存储目录 463
14.2.4 getRootDirectory方法:获取Root目录 464
14.2.5 getExtemaiStoragePublicDirectory方法:获取特定类型目录 466
14.2.6 getExtemalStorageState方法:获取外部存储状态 467
14.2.7 isExtemalStorageEmulated方法:检查是否有外部存储设备模拟 469
14.2.8 isExtemalStorageRemovable方法:外部存储设备是否可以移除 470
14.3小结 471
第15章Android电话操作 472
15.1 TelephonyManager类:电话管理 472
15.1.1 getCallState方法:获取电话状态 472
15.1.2 getDeviceld方法:获取设备ID 473
15.1.3 getDeviceSoftwareVersion方法:获取软件版本号 475
15.1.4 getLinelNumber方法:获取本机号码 476
15.1.5 getNetworkCountrylso方法:获取国家码 477
15.1.6 getNetworkOperator方法:获取网络操作号 478
15.1.7 getNetworkType方法:获取网络类型 479
15.1.8 getPhoneType方法:获取手机类型 481
15.1.9 getSimCountrylso方法:获取SIM卡的国家码 482
15.1.10 getSimState方法:获取SIM的状态信息 483
15.1.11 getSimOperator方法:获取SIM卡的操作码 485
15.1.12 getSimOperatorName方法:获取服务商 485
15.1.13 getSimSerialNumber方法:获取SIM卡的序列号 487
15.1.14 getSubscriberld方法:获取用户唯一ID 487
15.1.15 getVoiceMailAlphaTag方法:获取语音邮件识别码 489
15.1.16 hasIccCard方法:ICC卡是否存在 489
15.1.17 isNetworkRoaming方法:获取漫游状态 491
15.1.18 getVoiceMailNumber方法:获取语音邮件号码 492
15.1.19 getDataState方法:获取数据连接状态 493
15.1.20 getDataActivity方法:获取数据活动状态 494
15.2 SignalStrength类:信号强度 496
15.2.1 isGsm方法:判断是否为GSM 497
15.2.2 getGsmBitErrorRate方法:获取误码率 498
15.2.3 getGsmSignalStrength方法:获取信号强度 499
15.2.4 getCdmaDbm方法:获取CDMA信号的接收强度 501
15.2.5 getCdmaEcio方法:获取CDMA信号的导频信号水平 501
15.2.6 getEvdoDbm方法:获取EVDO信号的接收强度 502
15.2.7 getEvdoEcio方法:获取EVDO信号的导频信号水平 502
15.2.8 getEvdoSnr方法:获取EVDO信号的信噪比 502
15.3 ServiceState类:服务状态 502
15.3.1 setState方法:设置手机的服务状态 503
15.3.2 setStateOff方法:关闭服务 504
15.3.3 setStateOutOfService方法:设置无服务 505
15.3.4 getState方法:获取服务状态 506
15.3.5 setRoaming方法:设置漫游状态 508
15.3.6 getRoaming方法:获取漫游状态 509
15.3.7 setOperatorName方法:设置运营商名称 511
15.3.8 getOperatorAlphaLong方法:获取运营商名称 512
15.3.9 getOperatorAlphaShort方法:获取运营商简称 512
15.3.10 getOperatorNumeric方法:获取运营商代码 512
15.3.11 setlsManualSelection方法:设置手动选择网络 514
15.3.12 getIsManualSelection方法:是否手动选择网络 515
15.4 SmsManager类:短消息管理 517
15.4.1 sendTextMessage方法:发送短信 517
15.4.2 divideMessage方法:分割短信 518
15.4.3 sendMultipartTextMessage方法:发送多条短信 519
15.5小结 521
第16章Android定位 522
16.1 LocationManager类:定位服务管理 522
16.1.1 getLastKnownLocation方法:获取最新位置 523
16.1.2 getAllProviders方法:获取所有位置提供者 524
16.1.3 getProviders方法:获取可用位置提供者 526
16.1.4 isProviderEnabled方法:获取位置提供者是否使能 527
16.1.5 getBestProvider方法:获取最佳的位置提供者 528
16.1.6 getProvider方法:获取位置提供者 530
16.1.7 requestLocationUpdates方法:请求位置更新 532
16.1.8 removeUpdates方法:移除位置更新请求 533
16.1.9 addGpsStatusListener方法:添加GPS状态监听器 536
16.1.10 getGpsStatus方法:获取GPS状态 537
16.1.11 removeGpsStatusListener方法:移除GPS状态监听器 539
16.2 GpsStatus类:GPS状态 540
16.2.1 getTimeToFirstFix方法:获取首次定位时间 540
16.2.2 getMaxSatellites方法:获取最大卫星数量 542
16.2.3 getSatellites方法:获取GPS卫星状态 544
16.3 GpsSatellite类:GPS卫星 545
16.3.1 getAzimuth方法:获取方位角 545
16.3.2 getElevation方法:获取高度角 545
16.3.3 getPm方法:获取伪随机数 545
16.3.4 getSnr方法:获取信噪比 545
16.4 Location类:位置信息 548
16.4.1 getLatitude方法:获取纬度 548
16.4.2 getLongitude方法:获取经度 550
16.4.3 getSpeed方法:获取速度 551
16.4.4 getAccuracy方法:获取精确度 553
16.4.5 getBearing方法:获取方位 555
16.4.6 getTime方法:获取UTC时间 556
16.4.7 getAltitude方法:获取高度 557
16.4.8 getProvider方法:获取位置提供者 559
16.5 Criteria类:筛选标准 561
16.5.1 setAccuracy方法:设置定位精度 562
16.5.2 setSpeedRequired方法:设置是否需要速度 562
16.5.3 setCostAllowed方法:设置是否允许收费 562
16.5.4 setBearingRequired方法:设置是否需要方位 562
16.5.5 setAltitudeRequired方法:设置是否需要海拔 563
16.5.6 setPowerRequirement方法:设置电量消耗 563
16.6小结 564
第17章Android传感器 565
17.1 SensorManager类:传感器管理 565
17.1.1 getSensorList方法:获取传感器列表 565
17.1.2 getDefaultSensor方法:获取默认传感器 567
17.1.3 registerListener方法:注册监听器 568
17.1.4 unregisterListener方法:取消注册监听器 569
17.2 Sensor类:传感器 571
17.2.1 getName方法:获取传感器的设备名称 572
17.2.2 getVersion方法:获取传感器的设备版本 573
17.2.3 getType方法:获取通用类型号 575
17.2.4 getVendor方法:获取供应商名称 577
17.2.5 getPower方法:获取传感器的功耗 578
17.2.6 getResolution方法:获取传感器的分辨率 580
17.2.7 getMaximumRange方法:获取传感器的最大量程 583
17.2.8 getMinDelay方法:获取传感器的最短时间间隔 584
17.3小结 586