Android项目实战—手机安全卫士(Android Studio)(第2版)
定 价:58 元
- 作者:
- 出版时间:2019/12/1
- ISBN:9787113262792
- 出 版 社:中国铁道出版社
- 中图法分类:TN929.53
- 页码:
- 纸张:胶版纸
- 版次:2
- 开本:16K
职业能力标准是职业院校进行课程开发,人力资源部门进行人力资源管理不可缺少的依据。本书上篇介绍了职业能力标准开发方法;下篇介绍了广东省佛山市顺德区中等职业教育12个专业的职业能力标准。这些职业能力标准经过顺德区一级相应行会认定,是顺德区中等职业教育开展第三方评价的基础和依据,也为顺德区职业学校开展1X证书试点提供了适合于当地企业的标准。 本书可作为职业院校广大教师、企业人力资源部门广大工作人员的参考用书。
本书使用当前新版本的 Android Studio 作为开发工具,通过一个“手机安全卫士”项目讲解了一个完整的 Android 项目实现流程(产品设计、UI 设计、逻辑实现到项目打包)
为什么要升级《Android项目实战——手机安全卫士》
随着Andriod的迅速发展,开发Android项目使用的工具也在不断更新,由原来的低版本Android Studio工具替换为高版本工具、低版本的Android系统替换为高版本的系统,相比而言,高版本工具会提供更多设置操作方便用户使用,高版本的系统会提供更多API实现比较炫酷的效果与功能。为了适应市场的需求,让读者看到新的技术和开发工具,本书在《Android项目实战——手机安全卫士》基础上进行了升级,将开发工具与系统替 换为目前流行的新版本Android Studio 3.2与Android 8.0系统。本书还添加了一些产品与UI 设计的讲解,例如,如何设计手机清理模块,模块中的界面上设计有哪些功能,界面上设计有哪些颜色与图形等。同时,对原项目中的模块进行大部分更改,并增加了一些新 模块,例如,首页模块、网速测试模块、流量监控模块、项目上线等。
如何使用本书
作者简介
黑马程序员,江苏传智播客教育科技股份有限公司(简称传智播客)是一家致力于培养高素质软件开发人才的科技公司,黑马程序员是传智播客旗下高端IT教育品牌。
第 1 章 项目综述 1
任务1 项目分析 1
任务1-1 需求分析 1
任务1-2 可行性分析 1
任务2 项目简介 2
任务2-1 项目概述 2
任务2-2 开发环境 2
任务2-3 项目功能结构 2
任务3 效果展示 3
任务3-1 欢迎模块 3
任务3-2 首页模块 4
任务3-3 手机清理模块 4
任务3-4 骚扰拦截模块 6
任务3-5 病毒查杀模块 8
任务3-6 软件管理模块 9
任务3-7 程序锁模块 10
任务3-8 网速测试模块 10
任务3-9 流量监控模块 12
本章小结 13
第 2 章 欢迎模块与首页模块 14
任务1 “欢迎”界面设计分析 14
任务1-1 原型分析 14
任务1-2 UI分析 15
任务2 搭建欢迎界面 16
任务3 实现欢迎界面功能 18
任务3-1 实现版本号信息显示功能 18
任务3-2 实现跳转延迟功能 19
任务4 “首页”设计分析 20
任务4-1 原型分析 20
任务4-2 UI分析 22
任务5 搭建首页界面 24
任务5-1 搭建标题栏布局 25
任务5-2 实现仪表盘效果 26
任务5-3 搭建首页头部界面布局 31
任务5-4 搭建首页中部界面布局 32
任务5-5 搭建首页底部界面布局 36
任务6 实现首页界面功能 39
任务6-1 初始化界面控件 39
任务6-2 获取手机内置SD卡与内存信息 41
任务6-3 显示手机内置SD卡与内存信息 42
任务6-4 实现界面控件的点击事件 44
本章小结 45
第 3 章 手机清理模块 46
任务1 “扫描垃圾”设计分析 46
任务1-1 原型分析 46
任务1-2 UI分析 49
任务2 搭建扫描垃圾界面 51
任务2-1 搭建扫描垃圾界面布局 51
任务2-2 搭建扫描垃圾界面条目布局 54
任务3 实现扫描垃圾界面功能 55
任务3-1 封装垃圾信息实体类 56
任务3-2 编写垃圾信息列表适配器 56
任务3-3 初始化界面控件 59
任务3-4 申请手机SD卡权限 60
任务3-5 遍历手机SD卡中的文件 61
任务3-6 实现扫描垃圾功能 62
任务3-7 实现界面控件的点击事件 66
任务4 “清理垃圾”设计分析 67
任务4-1 原型分析 67
任务4-2 UI分析 69
任务5 搭建清理垃圾界面 70
任务6 实现清理垃圾界面功能 74
任务6-1 初始化界面控件 75
任务6-2 实现清理垃圾功能 76
任务6-3 实现界面控件的点击事件 79
本章小结 80
第 4 章 骚扰拦截模块 81
任务1 “骚扰拦截”设计分析 81
任务1-1 原型分析 81
任务1-2 UI分析 84
任务2 搭建骚扰拦截界面 85
任务2-1 骚扰拦截界面布局 85
任务2-2 搭建骚扰拦截界面条目布局 87
任务3 黑名单数据库 88
任务3-1 创建黑名单数据库 89
任务3-2 创建数据库操作类 89
任务4 实现骚扰拦截界面功能 90
任务4-1 封装联系人的实体类 90
任务4-2 实现骚扰拦截列表的适配器 91
任务4-3 申请拨打电话和通讯记录的读写权限 93
任务4-4 初始化界面控件 95
任务4-5 获取拦截次数大于0的数据 96
任务4-6 刷新骚扰拦截列表 97
任务5 “黑名单”设计分析 98
任务5-1 原型分析 98
任务5-2 UI分析 100
任务6 搭建黑名单界面 102
任务6-1 搭建黑名单界面布局 102
任务6-2 搭建黑名单界面条目布局 104
任务6-3 搭建添加黑名单选项界面布局 105
任务7 实现黑名单界面功能 108
任务7-1 实现黑名单列表的适配器 108
任务7-2 初始化界面控件 111
任务7-3 刷新黑名单界面 112
任务7-4 创建对话框 113
任务8 “添加黑名单”设计分析 115
任务8-1 原型分析 115
任务8-2 UI分析 116
任务9 搭建添加黑名单界面 117
任务10 归属地数据库 119
任务10-1 数据库展示 120
任务10-2 复制归属地数据库到项目中 121
任务10-3 创建归属地数据库操作类 122
任务11 实现添加黑名单界面功能 124
任务11-1 初始化界面控件 125
任务11-2 添加信息到黑名单数据库 125
任务11-3 实现界面控件的点击事件 126
任务12 “选择联系人”设计分析 128
任务12-1 原型分析 128
任务12-2 UI分析 129
任务13 搭建选择联系人界面 130
任务13-1 搭建选择联系人界面布局 130
任务13-2 搭建选择联系人界面条目布局 131
任务14 实现选择联系人界面功能 132
任务14-1 初始化界面控件 132
任务14-2 申请读取联系人的权限 133
任务14-3 创建选择联系人列表适配器 134
任务14-4 设置列表中的数据 135
任务15 实现黑名单拦截功能 137
任务15-1 创建拦截来电广播接收者 137
任务15-2 挂断电话 138
任务15-3 创建未接电话的内容观察者 139
任务15-4 更新黑名单数据 141
任务15-5 骚扰拦截服务 142
本章小结 143
第 5 章 病毒查杀模块 144
任务1 “病毒查杀”设计分析 144
任务1-1 原型分析 144
任务1-2 UI分析 146
任务2 搭建病毒查杀界面 147
任务3 实现病毒查杀界面功能 150
任务3-1 展示病毒数据库 150
任务3-2 初始化界面控件 151
任务3-3 显示查杀病毒的时间 151
任务3-4 复制病毒数据库到项目中 152
任务3-5 实现界面控件的点击事件 153
任务4 “病毒查杀进度”设计分析 154
任务4-1 原型分析 154
任务4-2 UI分析 156
任务5 搭建病毒查杀进度界面 158
任务5-1 搭建病毒查杀进度界面布局 158
任务5-2 搭建病毒查杀进度界面条目布局 161
任务6 实现病毒查杀进度界面 功能 162
任务6-1 检测文件是否是病毒 162
任务6-2 获取文件的MD5码 163
任务6-3 封装应用信息实体类 165
任务6-4 编写应用信息列表适配器 165
任务6-5 初始化界面控件 167
任务6-6 实现病毒查杀功能 168
任务6-7 实现界面控件的点击事件 171
本章小结 172
第 6 章 软件管理模块 173
任务1 软件管理界面分析 173
任务1-1 原型分析 173
任务1-2 UI分析 175
任务2 搭建软件管理界面 177
任务2-1 搭建软件管理界面布局 177
任务2-2 搭建软件管理界面条目布局 179
任务3 实现软件管理界面功能 182
任务3-1 封装应用程序实体类 182
任务3-2 获取手机中的所有应用 183
任务3-3 实现应用的开启、卸载、分享功能 184
任务3-4 编写应用列表适配器 187
任务3-5 初始化界面控件 193
任务3-6 注册卸载应用的广播 194
任务3-7 实现应用列表显示的功能 195
本章小结 199
第 7 章 程序锁模块 200
任务1 “设置密码”设计分析 200
任务1-1 原型分析 200
任务1-2 UI分析 202
任务2 搭建设置密码界面 203
任务3 实现设置密码界面功能 205
任务3-1 初始化界面控件 205
任务3-2 MD5加密算法 206
任务3-3 实现保存密码的功能 207
任务4 “程序锁”设计分析 208
任务4-1 原型分析 208
任务4-2 UI分析 210
任务5 搭建程序锁界面 211
任务5-1 搭建程序锁界面布局 212
任务5-2 搭建程序列表界面布局 213
任务5-3 搭建程序列表界面条目布局 214
任务6 程序锁数据库 215
任务6-1 创建程序锁数据库 215
任务6-2 创建数据库操作类 216
任务7 实现程序锁界面功能 216
任务7-1 封装应用信息实体类 217
任务7-2 获取手机中所有程序 217
任务7-3 编写程序列表适配器 218
任务7-4 实现未加锁列表界面功能 219
任务7-5 实现已加锁列表界面功能 223
任务7-6 创建内容提供者 226
任务7-7 申请使用记录访问权限 226
任务7-8 初始化界面控件 228
任务7-9 加载已加锁与未加锁列表界面 228
任务7-10 实现界面控件的点击事件 230
任务7-11 实现界面水平滑动的功能 230
任务7-12 获取栈顶应用包名 232
任务7-13 监听任务栈顶的应用 234
任务8 “输入密码”设计分析 237
任务8-1 原型分析 237
任务8-2 UI分析 238
任务9 搭建输入密码界面布局 239
任务10 实现输入密码界面功能 241
任务10-1 初始化界面控件 241
任务10-2 初始化界面数据 242
任务10-3 实现界面控件的点击事件 243
本章小结 246
第 8 章 网速测试模块 247
任务1 “网速测试”设计分析 247
任务1-1 原型分析 247
任务1-2 UI分析 249
任务2 搭建网速测试界面 251
任务2-1 实现圆盘效果 251
任务2-2 搭建网速测试界面布局 259
任务2-3 实现对话框效果 261
任务3 实现网速测试界面功能 263
任务3-1 搭建服务器 264
任务3-2 配置服务器外网 265
任务3-3 初始化界面控件 269
任务3-4 创建自定义对话框 269
任务3-5 检测网络 273
任务3-6 创建测试网速的工具类 275
任务3-7 实现网速测试功能 278
任务4 “测试报告”设计分析 283
任务4-1 原型分析 283
任务4-2 UI分析 285
任务5 搭建测试报告界面 286
任务6 实现测试报告界面功能 289
任务6-1 初始化界面控件 289
任务6-2 显示下载与上传网速 290
任务6-3 实现界面控件的点击事件 290
本章小结 291
第 9 章 流量监控模块 292
任务1 “流量监控”设计分析 292
任务1-1 原型分析 292
任务1-2 UI分析 294
任务2 搭建流量监控界面 296
任务2-1 自定义圆形进度条 297
任务2-2 搭建剩余套餐流量界面布局 301
任务2-3 搭建流量统计界面布局 302
任务2-4 搭建本月流量详情界面布局 304
任务3 实现流量监控界面功能 306
任务3-1 创建获取流量的工具类 306
任务3-2 初始化界面控件 309
任务3-3 申请使用记录访问权限 310
任务3-4 初始化界面数据 312
任务3-5 实现本月详情信息显示功能 313
任务4 “设置套餐流量”设计分析 317
任务4-1 原型分析 317
任务4-2 UI分析 318
任务5 搭建设置套餐流量界面 319
任务6 实现设置套餐流量界面 功能 320
任务6-1 初始化界面控件 321
任务6-2 实现界面控件的点击事件 321
任务7 “本月详情”设计分析 324
任务7-1 原型分析 324
任务7-2 UI分析 325
任务8 搭建本月详情界面 327
任务8-1 搭建本月详情界面布局 327
任务8-2 搭建本月详情界面条目布局 329
任务9 实现本月详情界面功能 330
任务9-1 封装流量信息实体类 330
任务9-2 编写本月详情列表适配器 331
任务9-3 初始化界面控件 332
任务9-4 获取本月流量数据 333
本章小结 335
第 10 章 项目上线 336
任务1 代码混淆 336
任务1-1 修改build.gradle文件 336
任务1-2 编写proguard-rules.pro文件 337
任务2 项目打包 338
任务3 项目加固 341
任务4 项目发布 345
本章小结 348