Android应用案例开发大全 第4版 作者:吴亚峰等编著出版时间: 2018年版内容简介 本书以讲解Android手机综合应用程序开发为主题,通过11个典型范例全面且深入地讲解了单机应用、网络应用、商业案例、游戏案例等多个开发技术。全书共分12章,详细介绍了3D动态壁纸—百纳水族馆,LBS类应用—掌上杭州,营销管理系统—手机汽车4S店,LBS交通软件—百纳公交小助手,校园服务类应用—社团宝,校园辅助软件—手机新生小助手,生活辅助类应用—美食天下,音乐休闲软件—百纳网络音乐播放器,中学教育AR应用—化学可视体验,益智类游戏—污水征服者,生活服务类应用—驾考宝典等Android应用的开发技术。书中所有案例的全部源代码读者都可以通过网络下载,方便学习。本书以真实的项目开发为写作背景,具有很强的实用性和实战性。讲解上深入浅出、通俗易懂,既有Android开发的实战技术和技巧,也包括真实项目的策划方案。本书非常适合初学者或有一定Android基础并希望学习Android开发技术的读者使用。目录目 录第 1章 初识庐山真面目——Android简介 11.1 Android的来龙去脉 11.2 掀起Android的盖头来 11.2.1 选择Android的理由 11.2.2 Android的应用程序框架 21.3 Android开发环境的搭建 41.3.1 Android Studio和Android SDK的下载 41.3.2 Android Studio和Android SDK的安装 51.3.3 第 一个Android程序 81.4 DDMS的灵活应用 131.4.1 初识DDMS 131.4.2 System.out.println方法 141.4.3 android.util.Log类 141.4.4 Devices的管理 151.4.5 模拟器控制(Emulator Control)详解 171.4.6 File Explorer——SD Card文件管理器 181.5 本书案例项目的导入 191.6 本章小结 20第 2章 3D动态壁纸——百纳水族馆 212.1 背景及功能概述 212.1.1 项目背景 212.1.2 功能介绍 222.2 策划及准备工作 232.2.1 项目策划 242.2.2 Android平台下3D开发的准备工作 242.2.3 百纳骨骼动画格式文件 252.3 整体介绍 252.4 项目的绘制 282.4.1 介绍壁纸服务类——OpenGLES3WallpaperService 292.4.2 自定义渲染器类——MySurfaceView 302.5 辅助绘制类 332.5.1 背景辅助绘制类——Background 342.5.2 气泡辅助绘制类——Bubble 352.5.3 鱼类辅助绘制类——BNModel 362.5.4 模型辅助绘制类——BnggdhDraw 372.6 绘制相关类 402.6.1 气泡绘制相关类 402.6.2 群鱼绘制相关类 422.6.3 鱼群绘制相关类 442.6.4 鱼食绘制相关类 462.7 线程相关类 482.7.1 气泡移动线程类——BubbleThread 482.7.2 群鱼游动线程类——FishGoThread 482.7.3 鱼群游动线程类——FishSchoolThread 492.7.4 鱼食移动线程类——FoodThread 512.7.5 吸引力线程类——AttractThread 522.7.6 线程组管理类——BNThreadGroup 542.8 着色器的开发 542.8.1 气泡的着色器 542.8.2 珍珠着色器 552.8.3 鱼类的着色器 572.9 优化与改进 58第3章 LBS类应用——掌上杭州 593.1 应用背景及功能介绍 593.1.1 背景简介 593.1.2 功能概述 593.1.3 开发环境 603.2 功能预览及架构 603.2.1 加载、美食、医疗功能预览 603.2.2 购物、景点、娱乐功能预览 633.2.3 搜索、设置功能预览 673.2.4 项目目录结构 683.3 开发前的准备工作 693.3.1 信息的搜集 693.3.2 数据包的整理 723.3.3 XML资源文件的准备 723.4 辅助工具类的开发 743.4.1 常量类的开发 743.4.2 图片获取类的开发 743.4.3 解压文件类的开发 753.4.4 读取文件类的开发 763.4.5 自定义字体类的开发 763.5 辅助功能的实现 773.5.1 加载功能的实现 773.5.2 主界面的实现 803.5.3 百度地图的实现 823.6 美食模块的实现 863.6.1 美食主界面的实现 863.6.2 介绍美食的实现 883.7 景点功能开发 903.7.1 景点主界面的开发 913.7.2 当前景点界面的开发 953.7.3 所有景点界面的开发 963.7.4 新浪微博功能的开发 973.7.5 搜索兴趣点功能的开发 1013.7.6 语言选择功能的开发 1023.7.7 建议反馈界面的开发 1033.8 其他模块的实现 1043.8.1 娱乐、医疗、购物的实现 1043.8.2 住宿版块的实现 1063.8.3 搜索模块的实现 1093.8.4 设置模块的实现 1123.9 本章小结 113第4章 营销管理系统——手机汽车4S店 1144.1 系统背景及功能介绍 1144.1.1 手机汽车4S店背景简介 1144.1.2 手机汽车4S店功能概述 1144.1.3 手机汽车4S店开发环境和目标平台 1164.2 开发前的准备工作 1174.2.1 数据库设计 1174.2.2 数据库表设计 1184.2.3 使用Navicat for MySQL创建表并插入初始数据 1214.3 系统功能预览及总体架构 1224.3.1 PC端预览 1224.3.2 Android客户端功能预览 1254.3.3 Android客户端项目目录结构 1264.4 PC端的界面搭建与功能实现 1274.4.1 用户登录功能的开发 1274.4.2 主管理界面功能的开发 1294.4.3 汽车车型管理功能的开发 1304.4.4 汽车新闻管理功能的开发 1344.4.5 信息反馈管理功能的开发 1364.5 服务器端的实现 1374.5.1 常量类的开发 1374.5.2 服务线程的开发 1374.5.3 DB处理类的开发 1394.5.4 图片处理类 1404.4.5 辅助工具类 1404.4.6 其他方法的开发 1424.6 Android客户端的准备工作 1424.6.1 图片资源的准备 1424.6.2 XML资源文件的准备 1434.7 加载界面功能模块的实现 1444.8 Android客户端各功能模块的实现 1474.8.1 汽车4S店主界面模块的实现 1474.8.2 汽车新闻模块的实现 1504.8.3 汽车车型模块的实现 1544.8.4 汽车文化模块的实现 1584.8.5 汽车经销商模块的实现 1594.8.6 汽车服务模块的实现 1604.9 Android客户端与服务器连接的实现 1664.9.1 Android客户端与服务器连接的各类功能 1664.9.2 Android客户端与服务器连接中各类功能的开发 1674.9.3 其他方法的开发 1684.10 本章小结 168第5章 LBS交通软件——百纳公交小助手 1705.1 系统背景及功能介绍 1705.1.1 背景简介 1705.1.2 模块与界面概览 1705.1.3 开发环境 1725.2 功能预览及框架 1725.2.1 项目功能预览 1725.2.2 项目目录结构 1755.3 开发前的准备工作 1775.3.1 数据库表的设计 1775.3.2 百度地图键值的申请 1785.3.3 百度地图的显示 1795.3.4 XML资源文件的准备 1805.4 辅助工具类的开发 1825.4.1 常量类的开发 1825.4.2 工具类的开发 1835.4.3 换乘路径规划工具类的开发 1845.4.4 定位和获取附近公交站工具类的开发 1855.5 各个功能模块的实现 1865.5.1 选择城市界面模块的实现 1865.5.2 主界面模块的实现 1895.5.3 线路查询模块的实现 1915.5.4 换乘方案查询模块的实现 2005.5.5 定位附近站点模块的开发 2085.6 本章小结 215第6章 校园服务类应用——社团宝 2166.1 应用背景及功能介绍 2166.1.1 软件背景简介 2166.1.2 软件功能概述 2166.1.3 软件开发环境与目标平台 2186.2 功能预览及架构 2196.2.1 管理端功能预览 2196.2.2 Android端功能预览 2206.2.3 目录结构图 2236.3 开发前的准备工作 2246.3.1 数据库设计 2246.3.2 数据库表设计 2256.3.3 使用Navicat for MySQL创建表并插入初始数据 2286.4 服务器端的实现 2296.4.1 常量类的开发 2296.4.2 服务线程的开发 2296.4.3 辅助工具类 2316.4.4 其他方法的开发 2326.5 管理端功能搭建及界面实现 2336.5.1 用户登录功能的实现 2336.5.2 主管理界面功能的开发 2346.5.3 社团管理功能的开发 2366.5.4 意见管理功能的开发 2386.5.5 账号管理功能的开发 2386.6 Android客户端各功能模板实现 2406.6.1 整体框架的搭建 2406.6.2 常量类的开发 2446.6.3 自定义字体类的开发 2446.6.4 启动界面功能的实现 2456.6.5 调用系统浏览器 2466.6.6 滚动加载功能的实现 2476.6.7 Android端与服务器的连接 2506.6.8 个人功能模块的实现 2516.6.9 图片处理 2566.6.10 Exit类的搭建 2576.6.11 社团主界面的构建 2586.6.12 活动主界面的构建 2596.6.13 社交主界面的构建 2616.6.14 社交功能的实现 2626.7 本章小结 263第7章 校园辅助软件——手机新生小助手 2647.1 应用背景及功能介绍 2647.1.1 新生小助手背景简介 2647.1.2 新生小助手功能概述 2647.1.3 新生小助手开发环境 2657.2 功能预览及架构 2657.2.1 新生小助手功能预览 2667.2.2 新生小助手目录结构图 2697.3 开发前的准备工作 2717.3.1 文本信息的搜集 2727.3.2 相关图片的采集 2747.3.3 数据包的整理 2767.3.4 XML资源文件的准备 2777.4 辅助工具类的开发 2787.4.1 常量类的开发 2787.4.2 图片获取类的开发 2787.4.3 解压文件类的开发 2797.4.4 读取文件类的开发 2807.4.5 自定义字体类的开发 2807.4.6 平面图数据类的开发 2817.5 加载功能模块的实现 2867.6 各个功能模块的实现 2897.6.1 新生小助手主界面模块的实现 2897.6.2 认识联大模块的实现 2917.6.3 报到流程模块的实现 3047.6.4 校内导航模块的实现 3057.6.5 唐山导航模块的实现 3077.6.6 更多信息模块的实现 3137.7 本章小结 314第8章 生活辅助类应用——美食天下 3158.1 系统的功能介绍 3158.1.1 美食天下功能概述 3158.1.2 应用开发环境和目标平台 3178.2 开发前的准备工作 3178.2.1 数据库设计 3188.2.2 数据库表的设计 3198.2.3 使用Navicat Lite for MySQL创建新表并插入初始数据 3248.3 系统功能预览及总体架构 3258.3.1 PC端预览 3258.3.2 Android客户端功能预览 3288.3.3 Android客户端目录结构图 3318.4 PC端的界面搭建与功能实现 3328.4.1 用户登录功能的开发 3328.4.2 主管理界面功能的开发 3348.4.3 菜品添加功能的开发 3358.4.4 菜品信息管理功能的开发 3388.5 服务器端的实现 3428.5.1 常量类的开发 3428.5.2 服务线程的开发 3438.5.3 DB处理类的开发 3448.5.4 图片处理类 3458.5.5 其他方法的开发 3468.6 Android客户端的准备工作 3468.6.1 图片资源的准备 3468.6.2 XML资源文件的准备 3478.6.3 本地数据库的准备 3478.6.4 常量类的准备 3508.7 Android定位功能的开发 3508.7.1 创建应用以及百度地图SDK的下载 3508.7.2 手机定位功能的实现 3538.8 Android客户端功能的实现 3548.8.1 主界面的实现 3548.8.2 查找菜品功能的实现 3568.8.3 上传菜品功能的实现 3628.8.4 菜品评论功能的实现 3648.8.5 查看离线菜品和随拍功能的实现 3658.9 Android客户端与服务器连接的实现 3678.9.1 Android客户端与服务器连接中的各类功能 3678.9.2 Android客户端与服务器连接中各类功能的开发 3688.9.3 其他方法的开发 3718.10 本章小结 371第9章 音乐休闲软件——百纳网络音乐播放器 3729.1 系统的功能介绍 3729.1.1 百纳音乐播放器功能概述 3729.1.2 百纳音乐播放器开发环境和目标平台 3739.2 开发前的准备工作 3749.2.1 数据库表的设计 3749.2.2 数据库表的创建 3759.2.3 使用Navicat for MySQL创建新表并插入初始数据 3779.3 系统功能预览及总体架构 3789.3.1 PC端预览 3789.3.2 Android客户端功能预览 3809.3.3 Android客户端目录结构图 3829.4 PC端的界面搭建与功能实现 3839.4.1 用户登录功能的开发 3839.4.2 主管理界面功能的开发 3859.4.3 歌手管理功能的开发 3869.4.4 歌曲管理功能的开发 3899.4.5 专辑的功能的开发 3909.5 服务器端的实现 3929.5.1 常量类的开发 3929.5.2 服务线程的开发 3929.5.3 DB处理类的开发 3949.5.4 图片处理类 3959.5.5 辅助工具类 3959.5.6 其他方法的开发 3979.6 Android客户端的准备工作 3979.6.1 图片资源的准备 3979.6.2 XML资源文件的准备 3979.6.3 本地数据库的准备 3989.6.4 常量类的准备 4009.7 Android客户端基本构架的开发 4009.7.1 音乐播放器的基本构架 4009.7.2 音乐播放模块的开发 4019.7.3 音乐切换模块的开发 4049.8 Android客户端功能模块的实现 4069.8.1 主界面的实现 4069.8.2 扫描音乐的实现 4089.8.3 音乐列表的实现 4109.8.4 播放界面的实现 4139.8.5 网络界面的实现 4189.9 Android客户端与服务器连接的实现 4199.9.1 Android客户端与服务器连接中的各类功能 4199.9.2 Android客户端与服务器连接中各类功能的开发 4199.9.3 其他方法的开发 4219.10 本章小结 421第 10章 中学教育AR应用——化学可视体验 42210.1 背景以及功能概述 42210.1.1 开发背景概述 42210.1.2 应用功能简介 42310.2 应用的策划及准备工作 42410.2.1 应用的策划 42410.2.2 开发前的准备工作 42510.2.3 资料卡片的结构及制作 42810.2.4 Vuforia部分的配置 42910.2.5 服务器端数据包简介 43010.3 应用的架构 43110.3.1 各个类的简要介绍 43210.3.2 应用架构简介 43410.4 Vuforia相关类 43510.5 界面绘制类 44310.5.1 界面控制类 44310.5.2 单独界面类 44510.6 线程类 45910.7 工具类 46210.7.1 下载工具类 46210.7.2 读取txt和bitmap工具类 46410.7.3 解压缩工具类 46710.7.4 读取模型工具类 46810.8 常量类 46910.9 管理类 47110.9.1 声音管理类 47110.9.2 着色器管理类 47210.9.3 图片管理类 47310.10 应用中着色器的开发 47510.10.1 绘制3D模型的着色器 47510.10.2 绘制2D界面的着色器 47610.10.3 绘制波浪矩形的着色器 47710.11 应用的优化与改进 478第 11章 益智类游戏——污水征服者 48011.1 游戏背景及功能概述 48011.1.1 背景概述 48011.1.2 功能介绍 48011.2 游戏的策划及准备工作 48311.2.1 游戏的策划 48311.2.2 安卓平台下游戏开发的准备工作 48311.3 游戏的架构 48711.3.1 各个类的简要介绍 48711.3.2 游戏框架简介 48911.4 常量及公共类 49111.4.1 游戏主控类WaterActivity 49111.4.2 游戏常量类Constant 49411.5 界面相关类 49511.5.1 游戏界面管理类ViewManager 49511.5.2 欢迎界面类BNWelcomeView 49711.5.3 选关界面类BNSelectView 50011.5.4 主菜单界面类BNMenuView 50511.5.5 游戏界面类BNGameView2 50711.5.6 纹理矩形绘制类RectForDraw 51911.5.7 地图数据结构相关类 52111.5.8 屏幕自适应相关类 52211.6 线程相关类 52411.6.1 计算缓冲线程类CalculateFloatBufferThread 52411.6.2 物理刷帧线程类UpdateThread 52511.6.3 火焰线程类FireUpdateThread 52711.7 水粒子计算相关类 52811.7.1 单个水粒子类Particle 52811.7.2 单个网格节点类Node 52911.7.3 物理计算类PhyCaulate 52911.8 游戏中着色器的开发 53211.8.1 纹理的着色器 53311.8.2 图像渐变的着色器 53311.8.3 水纹理的着色器 53411.8.4 加载界面闪屏纹理的着色器 53411.8.5 胜利失败对话框的纹理着色器 53511.8.6 烟火的纹理着色器 53511.9 游戏地图数据文件介绍 53611.10 游戏的优化及改进 537第 12章 生活服务类应用——驾考宝典 53812.1 应用背景及功能介绍 53812.1.1 驾考宝典背景简介 53812.1.2 驾考宝典功能概述 53912.1.3 开发环境与目标平台 54112.2 功能预览及架构 54212.2.1 安卓端功能预览 54212.2.2 PC端功能预览 54612.2.3 目录结构图 54912.3 开发前的准备工作 54912.3.1 数据库设计 54912.3.2 数据库表设计 55112.3.3 使用Navicat for MySQL创建表并插入初始数据 55212.4 服务器端的实现 55312.4.1 常量类的开发 55312.4.2 服务线程的开发 55412.4.3 DB处理类的开发 55512.4.4 图片处理类 55612.4.5 辅助工具类 55712.4.6 其他方法的开发 56012.5 PC端功能搭建及界面实现 56012.5.1 用户登录功能的实现 56012.5.2 主管理界面功能的开发 56112.5.3 管理员信息及其他类型信息的开发 56312.5.4 试题管理功能的开发 56412.5.5 论坛管理功能的开发 56612.6 Android客户端各功能模板实现 56612.6.1 整体框架的搭建 56612.6.2 常量类的开发 56912.6.3 侧滑界面的实现 56912.6.4 调用系统浏览器 57112.6.5 启动界面功能的实现 57212.6.6 定位功能的实现 57312.6.7 返回键的监听 57412.6.8 选车界面的实现 57512.6.9 选驾校界面的实现 57612.6.10 Android端与服务器的连接 57712.6.11 答题界面模块的实现 57812.6.12 考试记录等功能的实现 58212.6.13 车友圈模块的实现 58412.6.14 个人中心模块的实现 58712.7 本章小结 592 上一篇: Android应用开发项目实战 刘贤锋 等主编 2017年版 下一篇: Android手机应用网络流量分析与恶意行为检测研究 苏欣 等著 2016年版