当前位置:首页 > 工业技术
爱上Android
爱上Android

爱上AndroidPDF电子书下载

工业技术

  • 电子书积分:14 积分如何计算积分?
  • 作 者:于连林编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2017
  • ISBN:9787115461759
  • 页数:414 页
图书介绍:本书内容通俗易懂。比较适合初学者阅读,也可以作为专业人员的工具书,学习本书之前你并不需要任何的Android基础,但是你需要有一定的Java基础(包括:数组,运算符,面向对象思想,线程,IO流等),因为大部分Android开发都是使用Java语言的,而本书很少会介绍Java方面的知识。
《爱上Android》目录

第1章 初识Android 1

1.1 Android是什么 1

1.2 Android体系架构 1

1.3 Android发展史 4

第2章 选择您的开发工具 5

2.1 准备软件,认识Android Studio 5

2.1.1 什么是Android Studio 5

2.1.2 为什么使用Android Studio 6

2.2 安装Android Studio 6

2.2.1 安装配置要求 6

2.2.2 下载地址 6

2.2.3 安装JDK 7

2.2.4 安装Android Studio 7

2.2.5 设置JDK和Android SDK目录 14

2.3 项目的创建 16

2.3.1 创建项目的步骤 16

2.3.2 解决错误(没有错误最好) 19

2.4 Android Studio界面预览 21

2.5 常用设置 22

2.5.1 设置主题 22

2.5.2 设置字体和格式 22

2.5.3 设置文件编码 24

2.5.4 设置快捷键 24

2.5.5 其他设置 26

2.6 常用快捷键 26

2.7 Android工程目录 27

2.7.1 工程目录介绍 27

2.7.2 Gradle使用详解 28

2.7.3 app/build.gradle 28

2.8 SDK目录介绍 30

2.9 调试程序 31

2.9.1 创建模拟器 31

2.9.2 连接真实手机 33

2.9.3 Genymotion模拟器 34

2.10 程序启动分析 34

2.11 日志和注释 36

2.11.1 注释 37

2.11.2 日志 37

2.11.3 设置Android Studio日志显示颜色 38

2.11.4 实际开发中控制日志 39

2.11.5 Logger的使用 41

总结 42

第3章 界面的搭建 43

3.1 眼见皆View 43

3.2 布局的搭建方式 43

3.3 常用的控件和属性 44

3.3.1 TextView 44

3.3.2 Button 45

3.3.3 EditText 46

3.3.4 ImageView 47

3.3.5 ProgressBar 49

3.4 布局的介绍 50

3.4.1 LinearLayout(线性布局) 50

3.4.2 RelativeLayout(相对布局) 52

3.4.3 FrameLayout(帧布局) 55

3.4.4 GridLayout(网格布局) 56

3.4.5 CoordinatorLayout 58

3.4.6 ConstraintLayout(约束布局) 61

3.5 提示信息Toast和Snackbar 61

3.5.1 Toast使用详解 61

3.5.2 修改Toast位置 63

3.5.3 自定义Toast布局 63

3.5.4 避免内存泄露 65

3.5.5 Snackbar 65

3.6 点击事件三种写法 68

3.6.1 通过匿名内部类或内部类实现 68

3.6.2 让类实现接口 69

3.6.3 在布局文件中注册事件 70

3.7 使用Lambda表达式代替匿名内部类 70

3.7.1 什么是lambda呢 70

3.7.2 使用Lambda表达式 71

3.8 AlertDialog提示对话框 73

3.8.1 一般对话框 75

3.8.2 Material Design风格的对话框 76

3.8.3 列表对话框 78

3.8.4 单选按钮对话框 79

3.8.5 多选按钮对话框 79

3.8.6 自定义AlertDialog 80

3.9 ProgressDialog 81

总结 83

第4章 Activity介绍 84

4.1 Activity之间的跳转 84

4.1.1 显示意图 84

4.1.2 隐式意图 86

4.1.3 隐式意图的常见操作 88

4.1.4 IntentFilter匹配规则 89

4.2 Activity之间传递数据 92

4.2.1 通过Intent传递数据 92

4.2.2 静态工厂设计模式传递数据 93

4.2.3 返回数据给之前的Activity 93

4.3 Android 6.0权限的管理 95

4.3.1 Android 6.0新的权限机制 96

4.3.2 申请权限 96

4.3.3 第三方库RxPermissions 100

4.4 Activity生命周期 101

4.4.1 生命周期的方法 101

4.4.2 Activity销毁时保存数据 102

4.4.3 锁定横竖屏 103

4.4.4 开发时注意事项 104

4.5 Activity任务栈 104

4.6 Activity启动模式 105

4.6.1 standard 105

4.6.2 singleTop 106

4.6.3 singleTask 106

4.6.4 singleInstance 107

4.6.5 统一管理Activity 108

4.7 Toolbar和Navigation Drawer 109

4.7.1 AppBar的简介 109

4.7.2 创建菜单 111

4.7.3 Toolbar 112

4.7.4 Toolbar遇上Navigation Drawer 114

4.8 主题样式设置 118

总结 120

第5章 数据存储 121

5.1 SharedPreference 121

5.2 MD5加密 123

5.3 文件存储数据 124

5.3.1 保存到手机内存(Internal Storage) 124

5.3.2 SD卡存储(External Storage) 127

5.4 SQLite存储 132

5.4.1 创建数据库 132

5.4.2 升级数据库 135

5.4.3 数据库增删改查(CURD) 137

5.4.4 SQLite数据库的事务操作 144

5.5 常见的数据库框架 146

总结 146

第6章 网络编程 148

6.1 HTTP协议 148

6.1.1 URL简介 148

6.1.2 HTTP简介 149

6.1.3 GET和POST对比 151

6.2 HttpURLConnection 151

6.2.1 为什么废弃HttpClient 151

6.2.2 使用HttpURLConnection联网 152

6.3 多线程编程 154

6.3.1 线程的同步和异步 154

6.3.2 AsycTask 158

6.3.3 RxJava 161

6.4 网络请求实例 164

6.5 JSON解析 168

6.5.1 使用Android原生方式解析JSON 169

6.5.2 Gson的使用 170

6.5.3 插件GsonFormat快速实现JavaBean 174

6.5.4 完成请求实例 176

6.6 网络请求框架——Retrofit 179

6.6.1 使用Retrofit 179

6.6.2 常用的注解 181

6.6.3 完成请求案例 181

6.6.4 RxJava和Retrofit结合 183

6.7 WebView 184

6.7.1 WebView配置 186

6.7.2 WebViewClient方法 187

6.7.3 设置WebChromeClient 189

6.7.4 WebView常用的方法 190

6.7.5 WebView模板代码 191

总结 196

第7章 图片的处理 197

7.1 Bitmap和Drawable 197

7.2 大图的加载 199

7.3 图片加水印 202

7.4 图片特效,Matrix 205

7.4.1 缩放 205

7.4.2 倒影、镜面 207

7.4.3 旋转 208

7.4.4 位移 208

7.5 图片颜色处理——打造自己的美图秀秀 209

7.5.1 颜色过滤器ColorMatrixColorFilter 209

7.5.2 实现图片美化功能 210

7.6 案例——随手涂鸦 214

7.7 加载网络图片 217

7.7.1 网络图片的缓存策略 217

7.7.2 图片加载库Picasso的使用 218

总结 219

第8章 复杂控件的使用 220

8.1 ListView 220

8.1.1 初识ListView 221

8.1.2 定制ListView条目的界面 222

8.1.3 优化ListView 225

8.1.4 ListView的点击事件 226

8.1.5 ListView常用的属性 228

8.2 GridView 229

8.3 RecyclerView 231

8.3.1 初识RecyclerView 231

8.3.2 使用RecyclerView 232

8.3.3 不同的布局排列方式 234

8.3.4 RecyclerView添加点击事件 236

8.3.5 RecyclerView添加删除数据 237

8.3.6 下拉刷新SwipeRefreshLayout 237

8.4 CardView 239

8.5 ViewPager 241

8.6 BottomNavigationView(底部导航) 243

8.7 TabLayout 246

8.7.1 TabLayout使用 246

8.7.2 TabLayout自定义条目样式 249

总结 250

第9章 探索Fragment 251

9.1 使用Fragment 252

9.1.1 Fragment的生命周期 252

9.1.2 创建Fragment 252

9.1.3 向Activity添加Fragment 254

9.1.4 管理片段 256

9.1.5 Fragment的向下兼容 257

9.2 FragmentTabHost实现底部标签 257

9.3 ViewPager和Fragment结合 259

总结 273

第10章 广播接收者 274

10.1 广播简介 274

10.2 实现一个BroadcastReceiver 275

10.3 发送自定义广播 279

10.4 桌面快捷方式 283

总结 285

第11章 Service介绍 286

11.1 服务的基本用法 286

11.1.1 创建服务 286

11.1.2 启动和停止服务 287

11.1.3 绑定服务 289

11.1.4 服务的生命周期 292

11.2 IntentService 292

11.3 Service和BroadCastReceiver结合使用的案例(兼容Android 7.0) 294

11.3.1 Android 7.0错误原因 297

11.3.2 使用FileProvider 298

总结 300

第12章 动画 301

12.1 补间动画(Tween Animation) 301

12.2.1 AlphaAnimation(透明度动画) 302

12.2.2 ScaleAnimation(缩放动画) 304

12.2.3 TranslateAnimation(平移动画) 305

12.2.4 RotateAnimation(旋转动画) 306

12.2 逐帧动画(Frame Animation) 308

12.3 属性动画 310

总结 313

第13章 新特性 314

13.1 Android 7.0分屏开发 314

13.1.1 如何分屏呢 315

13.1.2 多窗口生命周期 315

13.1.3 针对多窗口进行配置 316

13.1.4 多窗口模式中运行应用注意事项 316

13.1.5 在多窗口模式中启动新Activity 317

13.1.6 支持拖放 318

13.2 Android 7.0快速设定 318

13.3 约束布局ConstraintLayout 321

13.3.1 ConstraintLayout简介 321

13.3.2 添加约束布局 322

13.3.3 使用约束布局 322

13.3.4 添加约束 323

13.3.5 使用自动连接和约束推断 325

13.3.6 快速对齐Align 326

13.4 使用Kotlin语言开发Android 326

总结 330

第14章 性能优化 331

14.1 性能检测 331

14.1.1 检测内存泄露 331

14.1.2 LeakCanary 334

14.1.3 追踪内存分配 335

14.1.4 查询方法执行的时间 335

14.2 过度绘制(OverDraw) 336

14.2.1 过度绘制概念 336

14.2.2 追踪过度绘制 336

14.2.3 去掉不合理背景 337

14.2.4 不合理的XML布局对绘制的影响 338

14.3 避免ANR 338

14.3.1 ANR分析 339

14.3.2 ANR解决方式 341

总结 341

第15章 屏幕适配 342

15.1 Android屏幕适配出现的原因 342

15.2 相关重要概念 344

15.2.1 屏幕尺寸 344

15.2.2 屏幕分辨率 344

15.2.3 屏幕像素密度 344

15.2.4 屏幕尺寸、分辨率、像素密度三者关系 344

15.2.5 dip 345

15.2.6 sp 345

15.3 尺寸适配解决方案 346

15.3.1 “布局”适配 346

15.3.2 尺寸(size)限定符 347

15.3.3 最小宽度(Smallest-width)限定符 348

15.3.4 使用布局别名 349

15.3.5 屏幕方向(Orientation)限定符 350

15.3.6 “布局组件”匹配 352

15.3.7 Layout_weight详解 352

15.3.8 “图片资源”匹配 355

15.3.9 .9的制作 355

15.3.10 “用户界面流程”匹配 357

15.4 屏幕密度适配 359

15.4.1 “布局控件”适配 359

15.4.2 百分比布局 360

15.4.3 约束布局 362

总结 362

第16章 自定义控件 363

16.1 自定义控件简介 363

16.2 View的生命周期 364

16.2.1 构造函数 365

16.2.2 onAttachedToWindow 369

16.2.3 onMeasure 370

16.2.4 onLayout 372

16.2.5 onDraw 372

16.2.6 View更新 373

16.2.7 动画 374

总结 374

第17章 JNI/NDK开发 375

17.1 NDK配置(最新的CMake方式) 375

17.1.1 下载 376

17.1.2 创建项目 376

17.1.3 运行项目 378

17.1.4 手动添加native方法 379

总结 380

第18章 开发一个真实的项目 381

18.1 项目需求分析 381

18.2 创建项目 382

18.3 界面实现 383

18.3.1 启动界面 383

18.3.2 引导页面 385

18.3.3 主界面 388

18.3.4 列表界面 390

18.4 请求网络 395

18.5 新闻列表和详情 400

18.6 完成整个项目 409

总结 412

相关图书
作者其它书籍
返回顶部