第一篇博客——从《第一行代码》学习笔记开始

《第一行代码》——开启Android神秘旅程

  这是我人生的第一次写博客的体验,感觉有些兴奋。因为最近在自学Android开发,看到刚哥Android学习路线指南,让我觉得写博客是一种很有效的学习方式,既能加深学习的印象,又能梳理自己思考问题的思路,也可以记录我在技术之路上的点点滴滴。总之,我相信这一定会是一次不错的学习体验,让我在技术的道路上越走越远。那么我就从学习笔记(为了加深自己的学习印象)来开始我的博客之旅吧。
  拿到郭神《第一行代码》时,让我感到欣喜若狂,仿佛拿到了Android通行证。希望可以通过这本书的学习,让我的基础知识更牢固,做好准备迎接更大的挑战。

第1章 开始启程——你的第一行Android代码

  • 1.1了解全貌——Android王国简介
    • 1.1.1 Android系统架构
    • 1.1.2 Android已发布的版本
    • 1.1.3 Android应用开发特色
  • 1.2 手把手带你搭建开发环境
    • 1.2.1 准备所需要的工具
    • 1.2.2 搭建开发环境
  • 1.3 创建你的第一个Android项目
    • 1.3.1 创建HelloWorld项目
    • 1.3.2 启动模拟器
    • 1.3.3 运行模拟器
    • 1.3.4 分析你的第一个Android程序
    • 1.3.5 详解项目中的资源
    • 1.3.6 详解build.gradle文件
  • 1.4 前行必备——掌握日志工具的使用
    • 1.4.1 使用Android的日志工具Log
    • 1.4.2 为什么使用Log而不使用System.out
  • 1.5 小结与点评

第2章 先从看得到的入手——探究活动

  • 2.1 活动是什么
  • 2.2 活动的基本用法
    • 2.2.1 手动创建活动
    • 2.2.2 创建和加载布局
    • 2.2.3 在AndroidManifest文件中注册
    • 2.2.4 在活动中使用Toast
    • 2.2.5 在活动中使用Menu
    • 2.2.6 销毁一个活动
  • 2.3 使用Intent在活动之间穿梭
    • 2.3.1 使用显示Intent
    • 2.3.2 使用隐式Intent
    • 2.3.3 更多显示Intent的用法
    • 2.3.4 向下一个活动传递数据
    • 2.3.5 返回数据给上一个活动
  • 2.4 活动的声明周期
    • 2.4.1 返回栈
    • 2.4.2 活动状态
    • 2.4.3 活动的生存期
    • 2.4.4 体验活动的生命周期
    • 2.4.5 活动被收回了怎么办
  • 2.5 活动的启动模式
    • 2.5.1 standard
    • 2.5.2 singleTop
    • 2.5.3 singleTask
    • 2.5.4 singleInstance
  • 2.6 活动的最佳时间
    • 2.6.1 知晓当前是在哪一个活动
    • 2.6.2 随时随地退出程序
    • 2.6.3 启动活动的最佳写法
  • 2.7 小结与点评

第3章 软件也要拼脸蛋——UI开发的点点滴滴

  • 3.1 如何编写程序界面
  • 3.2 常用控件的使用方法
    • 3.2.1 TextView
    • 3.2.2 Button
    • 3.2.3 EditText
    • 3.2.4 ImageView
    • 3.2.5 ProgressBar
    • 3.2.6 AlertDialog
    • 3.2.7 ProgressDialog
  • 3.3 详解4种基本布局
    • 3.3.1 线性布局
    • 3.3.2 相对布局
    • 3.3.3 帧布局
    • 3.3.4 百分比布局
  • 3.4 系统控件不够用?创建自定义控件
    • 3.4.1 引入布局
    • 3.4.2 创建自定义控件
  • 3.5 最常用的最难得控件——ListView
    • 3.5.1 ListView的简单用法
    • 3.5.2 定制ListView的界面
    • 3.5.3 提升ListView的运行效率
    • 3.5.4 ListView的点击事件
  • 3.6 更强大的滚动控件——RecyclerView
    • 3.6.1 RecyclerView的基本用法
    • 3.6.2 实现横向滚动和瀑布流布局
    • 3.6.3 RecyclerView的点击事件
  • 3.7 编写界面的最佳实践
    • 3.7.1 制作Nine-Patch图片
    • 3.7.2 编写精美的聊天界面
  • 3.8 小结与点评

第4章 手机平板要兼容——探究碎片

  • 4.1 碎片是什么
  • 4.2 碎片的使用方式
    • 4.2.1 碎片的简单用法
    • 4.2.2 动态添加碎片
    • 4.2.3 在碎片中模拟返回栈
    • 4.2.4 碎片和活动之间进行通信
  • 4.3 碎片的声明周期
    • 4.3.1 碎片的状态和回调
    • 4.3.2 体验碎片的生命周期
  • 4.4 动态加载布局的技巧
    • 4.4.1 使用限定符
    • 4.4.2 使用最小宽度限定符
  • 4.5 碎片的最佳实践——一个简易版的新闻应用
  • 4.6 小结与点评

第5章 全局大喇叭——详解广播机制

  • 5.1 广播机制简介
  • 5.2 接受系统广播
    • 5.2.1 动态注册监听网络变化
    • 5.2.2 静态注册实现开启启动
  • 5.3 发送自定义广播
    • 5.3.1 发送标准广播
    • 5.3.2 发送有序广播
  • 5.4 使用本地广播
  • 5.5 广播的最佳实践——实现强制下线功能
  • 5.6 Git时间——初始版本控制工具
    • 5.6.1 安装Git
    • 5.6.2 创建代码仓库
    • 5.6.3 提交本地代码
  • 5.7 小结与点评

第6章 数据存储全方案——详解持久化技术

  • 6.1 持久化技术简介
  • 6.2 文件存储
    • 6.2.1 将数据存储到文件中
    • 6.2.2 从文件中读取数据
  • 6.3 SharedPreferences存储
    • 6.3.1 将数据存储到SharedPreferences中
    • 6.3.2 从SharedPreferences中读取数据
    • 6.3.3 实现记住密码功能
  • 6.4 SQlite数据库存储
    • 6.4.1 创建数据库
    • 6.4.2 升级数据库
    • 6.4.3 添加数据
    • 6.4.4 更新数据
    • 6.4.5 删除数据
    • 6.4.6 查询数据
    • 6.4.7 使用SQL操作数据库
  • 6.5 使用LitePal操作数据库
    • 6.5.1 LitePal简介
    • 6.5.2 配置LitePal
    • 6.5.3 创建和升级数据库
    • 6.5.4 使用LitePal添加数据
    • 6.5.5 使用LitePal更新数据
    • 6.5.6 使用LitePal删除数据
    • 6.5.7 使用LitePal查询数据
  • 6.6 小结与点评

第7章 跨程序共享数据——探究内容提供器

  • 7.1 内容提供器简介
  • 7.2 运行时权限
    • 7.2.1 Android权限机制详解
    • 7.2.2 在程序运行时申请权限
  • 7.3 访问其他程序的数据
    • 7.3.1 ContentResolver的基本用法
    • 7.3.2 读取系统联系人
  • 7.4 创建自己的内容提供其
    • 7.4.1 创建内容提供器的步骤
    • 7.4.2 实现跨程序数据共享
  • 7.5 Git时间——版本控制工具进阶
    • 7.5.1 忽略文件
    • 7.5.2 查看修改内容
    • 7.5.3 车小玮提交的修改
    • 7.5.4 查看提交记录
  • 7.6 小结与点评

第8章 丰富你的程序——运用手机多媒体

  • 8.1 将程序运行到手机上
  • 8.2 使用通知
    • 8.2.1 通知的基本用法
    • 8.2.2 通知的进阶技巧
    • 8.2.3 通知的高级功能
  • 8.3 调用摄像头和相册
    • 8.3.1 调用摄像头拍照
    • 8.3.2 从相册中选择照片
  • 8.4 播放多媒体文件
    • 8.4.1 播放音频
    • 8.4.2 播放视频
  • 8.5 小结与点评

第9章 看看精彩的世界——使用网络技术

  • 9.1 WebView的用法
  • 9.2 使用HTTP协议访问网络
    • 9.2.1 使用HttpURLConnection
    • 9.2.2 使用OkHttp
  • 9.3 解析XML格式数据
    • 9.3.1 Pull解析方式
    • 9.3.2 SAX解析方式
  • 9.4 解析JSON格式数据
    • 9.4.1 使用JSONObject
    • 9.4.2 使用GSON
  • 9.5 网络编程的最佳实践
  • 9.6 小结与点评

第10章 后台默默的劳动者——探究服务

  • 10.1 服务是什么
  • 10.2 Android多线程编程
    • 10.2.1 线程的基本用法
    • 10.2.2 在子线程中更新UI
    • 10.2.3 解析异步消息处理机制
    • 10.2.4 使用AsyncTask
  • 10.3 服务的基本用法
    • 10.3.1 定义一个服务
    • 10.3.2 启动和停止服务
    • 10.3.3 活动和服务进行通信
  • 10.4 服务的生命周期
  • 10.5 服务的更多技巧
    • 10.5.1 使用前台服务
    • 10.5.2 使用IntentService
  • 10.6 服务的最佳时间——完整版的下载实例
  • 10.7 小结与点评

第11章 Android特色开发——基于位置的服务

  • 11.1 基于位置的服务简介
  • 11.2 申请API Key
  • 11.3 使用百度定位
    • 11.3.1 准备LBS SDK
    • 11.3.2 确定自己位置的经纬度
    • 11.3.3 选择定位模式
    • 11.3.4 看得懂的位置信息
  • 11.4 使用百度地图
    • 11.4.1 让地图显示出来
    • 11.4.2 移动到我的位置
    • 11.4.3 让“我”显示在地图上
  • 11.5 Git时间——版本控制工具的高级用法
    • 11.5.1 分支的用法
    • 11.5.2 与远程版本库写作
  • 11.6 小结与点评

第12章 最佳的UI体验——Material Design实战

  • 12.1 什么是Material Design
  • 12.2 ToolBar
  • 12.3 滑动菜单
    • 12.3.1 DrawerLayout
    • 12.3.2 NavigationView
  • 12.4 悬浮按钮和可交互提示
    • 12.4.1 FloatingActionButton
    • 12.4.2 Snackbar
    • 12.4.3 CoordinatorLayout
  • 12.5 卡片式布局
    • 12.5.1 CardView
    • 12.5.2 AppBarLayout
  • 12.6 下拉刷新
  • 12.7 可折叠式标题栏
    • 12.7.1 CollapsingToolbarLayout
    • 12.7.2 充分利用系统状态栏控件
  • 12.8 小结与点评

第13章 继续进阶——你还应该掌握的高级技巧

  • 13.1 全局获取Context的技巧
  • 13.2 使用Intent传递对象
    • 13.2.1 Serializable方式
    • 13.2.2 Parcelable方式
  • 13.3 定制自己的日志工具
  • 13.4 调试Android程序
  • 13.5 创建定时任务
    • 13.5.1 Alarm机制
    • 13.5.2 Doze模式
  • 13.6 多窗口模式编程
    • 13.6.1 进入多窗口模式
    • 13.6.2 多窗口模式下的生命周期
    • 13.6.3 禁用多窗口模式
  • 13.7 Lambda表达式
  • 13.8 总结

第14章 进入实战——开发酷欧天气

  • 14.1 功能需求及技术可行性分析
  • 14.2 Git时间——将代码托管到GitHub上
  • 14.3 创建数据库和表
  • 14.4 遍历全国省市县数据
  • 14.5 显示天气信息
    • 14.5.1 定义GSON实体类
    • 14.5.2 编写天气界面
    • 14.5.3 将天气显示到界面上
    • 14.5.4 获取必应每日一图
  • 14.6 手动更新天气和切换城市
    • 14.6.1 手动更新天气
    • 14.6.2 切换城市
  • 14.7 后台自动更新天气
  • 14.8 修改图标和名称
  • 14.9 你还可以做得事情

第15章 最后一步——将应用发布到360应用商店

  • 15.1 生成正式签名的APK文件
    • 15.1.1 使用Android Studio生成
    • 15.1.2 使用Gradle生成
    • 15.1.3 生成多渠道APK文件
  • 15.2 申请360开发者账号
  • 15.3 发布应用程序
  • 15.4 嵌入广告进行盈利
    • 15.4.1 注册腾讯广告联盟账号
    • 15.4.2 新建媒体和广告位
    • 15.4.3 接入广告SDK
    • 15.4.4 重新发布应用程序
  • 15.5 结束语

  好长的目录,抄目录真的是体力活啊,不过抄完对这本书讲解内容的框架有了一个初步的认识,让我迫不及待的想去把它读完。接下来的文章就是对每一章的内容的一个学习笔记了,会随着我的学习进度持续更新的。

我是个菜鸟,不会写博客,所以只能从抄笔记入手,如果有大神看到我写的内容,希望多多点评。希望可以告诉如何写博客。

你可能感兴趣的:(android,博客,学习笔记)