第1章 初识Android 1
Q1什么是Google Android系统? 1
Q2 Android系统中有哪些主要组件? 2
第2章 构建Android开发环境 3
Q1如何搭建Java开发环境? 3
Q2如何安装Android SDK? 9
Q3如何安装ADT插件? 12
Q4如何设置ADT插件? 15
Q5如何用Eclipse和Android命令创建并运行AVD模拟器? 17
Q6如何创建及导入Android项目? 24
Q7如何运行HelloWorld? 28
Q8 HelloWorld项目的结构是怎样的? 34
Q9如何调试Android应用? 37
Q10如何卸载Android项目? 43
第3章 用户界面 46
Ql用户界面的核心组件是什么?——Activity简介 46
Q2如何使用资源文件?——Assets、 Drawable、 Strings、 Colors等的使用 49
Q3如何显示和编辑文本?——TextView组件和EditText组件 54
Q4有哪些类型的按钮组件?——Buon、 ImageBuon和ToggleBuon组件 58
Q5如何使用单选按钮?——RadioBuon及RadioGroup的使用 62
Q6如何使用复选框?——CheckBox的使用 65
Q7如何显示图片?——ImageView的使用 67
Q8如何显示时间?——AnalogClock和DigitalClock的使用 69
Q9如何选择日期、时间?——DatePicker和TimePicker的使用 71
Q10如何使用进度提示?——ProgressBar的使用 74
Q11如何提示信息?——Dialog及Toast的使用 76
Q12如何使用特殊的对话框?——ProgressDialog和DatePickerDialog等的使用 80
Q13如何使用下拉列表?——Spinner的使用 87
Q14如何实现滚动显示图片及文本?———Galle的使用 91
Q15如何使用评分组件?——RatingBar的使用 94
Q16如何使用滑动条组件?——SeekBar的使用 96
Q17如何使用选项卡?——TabHost的使用 98
Q18如何用列表显示数据?——ListView的使用 102
Q19如何垂直、水平滚动显示数据?——ScrollV iew及HorizontalScrollView的使用 105
Q20如何创建和使用菜单?————OptionMenu、SubMenu和ContextMenu的使用 109
Q21如何使用布局?——LinearLayout、 RelativeLayout等的使用 113
Q22如何使用主题和样式?——————Android Theme和Style的应用 118
Q23如何使用组件动画?——Animation的应用 120
Q24如何实现滑动抽屉?——SlidingDrawer的应用 127
Q25属性“@+id”、“@id”和“@android:id/”、“?android:attr”有什么区别? 130
Q26如何简化复杂的layout?—— Include和Merge的应用 132
Q27如何让应用支持多种语言?——资源的国际化 133
第4章 后台服务与手机控制 135
Q1什么是Service? 135
Q2什么是BroadcastReceiver? 142
Q3如何使用手机的通知功能?———Notifiication和NoticationManager的应用 145
Q4如何使用闹铃?——AlarmManager的应用 148
Q5如何在多线程环境中使用进度及消息提示?——Handler、 Message的应用 152
Q6如何使用系统提供的异步加载?———AsyncTask的应用 154
Q7如何获取手机及通信网络的相关状态信息?——TelephonyManager及Android.provider.settings.System的应用 157
Q8如何拨打电话?——Intent.ACTION CALL BUTTON的应用 162
Q9如何实现手机的振动提示?——Vibrator的应用 164
Q10如何操作手机通讯录?———ContactsContract及ContentResolver的应用 166
Q11如何得知手机的电量?——Intent.ACTION BATTERY CHANGED的应用 168
Q12如何判断SD卡的各种状态及容量? 170
Q13如何在手机开机后自动运行程序?——Service与android.intent.action.BOOTCOMPLETED的应用 172
Q14如何调用系统程序发送E-mail?——Intent.ACTION SENDTO的应用 175
Q15如何动态获取及修改手机屏幕方向?——LANDSCAPE与PORTRAIT的应用 177
Q16如何调整系统的音量?——AudioManager的应用 179
Q17如何监听与控制手机按键操作?——KeyEvent的使用 181
Q18如何使用常用传感器?——Android重力及光线传感器的使用 183
Q19如何使用剪贴板?——ClipboardManager的应用 188
Q20如何使用系统的搜索服务?——SearchManager的应用 191
Q21如何访问系统内置的Google账号?——AccountManager的应用 194
Q22如何实现应用启动splash?——WindowsManager与线程的综合应用 202
Q23如何查看应用的包信息?——PackageManager的应用 205
Q24如何获取当前位置及监听位置变化?——LocationManager等的应用 207
Q25如何实现趋近警告?——LocationManager.addProximityAlert方法的应用 209
Q26如何发送和接收消息及状态的监听?——SmsManager、 Broadcase Receiver的应用 212
第5章 数据操作及持久化 215
Q1 Android组件之间如何通信?——Intent的简介 215
Q2 Intent有哪些重要属性?———Action、 Data、 Category、 Extras等的介绍 217
Q3组件如何识别不同的请求?——IntentFilter的使用 219
Q4如何在多个Activity之间共享数据?——Bundle与Intent的使用 231
Q5如何进行文件I/O操作?——FileInputStream与FileOutputStream的应用 235
Q6什么是SQLite?—— Android中的轻量级数据库 241
Q7如何创建、打开及删除SQLite数据库?——SQLiteDatabase及SQLiteOpenHelper的使用 243
Q8如何操作SQLite数据库?——SQLite数据库的增、删、改、查操作 255
Q9 SQLite数据库中有哪些常用的函数?——last insert rowid等的介绍 274
Q10什么是Preferences?—— Android中轻量级的数据存储机制及其使用 275
Q11 Preferences中有哪些类型?——CheckBoxPreference、 ListPreference等的介绍及创建 280
Q12如何向另一个Android应用共享数据?ContentProvider的简介与使用 288
Q13如何查询、更新另一个Android应用所共享的数据? 296
ContentResolver的简介与使用 296
Q14什么是Adapter与Adapter View?——数据适配器Adapter的简介 304
Q15如何使用简单数据Adapter?—— SimpleAdapter与ArrayAdapter的应用 304
Q16如何将数据库查询记录结果直接绑定到Adapter?—— CursorAdapter的使用 310
第6章 访问网络 316
Q1如何判断网络的状态?——ConnectivityManager与NetworkInfo的应用 316
Q2如何访问无线网络?——WifiiManager的应用 321
Q3如何使用套接字方式访问网络?——Socket的使用 333
Q4如何访问使用HTTP协议的网络数据?——HttpURLConnection和HpClient等的使用 352
Q5如何浏览网页?——WebView的使用 365
Q6如何使用蓝牙通信?——BluetoothAdapter的应用 380
第7章 多媒体编程 389
Q1如何播放音乐?——MediaPlayer的应用 389
Q2如何录制及播放录音?——MediaRecorde的应用 403
Q3如何播放视频?——VideoView的应用 416
Q4如何使用照相机?———amera的应用 427
Q5如何录制视频?——MediaRecorder与SurfaceView的应用 433
Q6如何绘制几何图形?———Graphics包的应用 437
第8章 使用Google服务 457
Q1如何显示Google地图?——MapActivity与MapView等的使用 457
Q2如何在地图上显示我的位置?——MyLocationOverlay的应用 467
Q3如何在地图上标注位置?——ItemizedOverlay及OverlayItem的应用 470
Q4如何获取位置的详细信息?———Geocoder的应用 474
Q5如何使用Google账号授权服务? ——oogle Account Authentication Service的应用 488
Q6如何使用Google翻译服务?———Google Translate API的应用 498
Q7如何使用Google搜索服务?——Google AJAX Search API的应用 506
Q8如何使用Google图表服务?———Google Chart API的应用 517
Q9如何使用Google日历服务?——Google Calendar API的应用 537
附录A Android应用的发布 569
附录B Android常用工具 585
附录C Android文件访问权限 609
附录D Android平台应用Permissions 611