└── README.md /README.md: -------------------------------------------------------------------------------- 1 | ## GitHub上最火的Android开源项目持续更新中..... 2 | 3 | * github最大的痛点在于,拿到开源项目不会用,导入各种报错,readme看不懂,推荐给大家一个链接,所有的 项目都亲测没有问题并且全部配置了详细的步骤和配套视频进行解说,欢迎大家star。 4 | 5 | * 项目地址:[https://github.com/open-android/Android](https://github.com/open-android/Android) 6 | 7 | * 欢迎关注微信公众号、长期为您推荐优秀博文、开源项目、视频 8 | 9 | * 微信公众号名称 : Android干货程序员 10 | 11 | ![](http://oi5nqn6ce.bkt.clouddn.com/itheima/booster/code/qrcode.png) 12 | 13 | ### Kotlin视频学习 14 | 15 | * 01-课程介绍 16 | 17 | http://www.365yg.com/item/6445599306496868878/ 18 | 19 | * 02_kotlin学习方法 20 | 21 | http://www.365yg.com/item/6445599300020863502/ 22 | 23 | * 03_kotlin选好教练车 24 | 25 | http://www.365yg.com/item/6445599302214484494/ 26 | 27 | * 04_kotlin你好世界 28 | 29 | http://www.365yg.com/item/6445599304320025102/ 30 | 31 | * 05_kotlin变量与输出 32 | 33 | http://www.365yg.com/item/6445599310758281741/ 34 | 35 | * 06_kotlin二进制基础 36 | 37 | http://www.365yg.com/item/6445599308682101262/ 38 | 39 | * 07_kotlin变量和常量 类型推断 40 | 41 | http://www.365yg.com/item/6445599315044860429/ 42 | 43 | * 08_kotlin变量取值范围 44 | 45 | http://www.365yg.com/item/6445599360783745550/ 46 | 47 | * 09_kotlin函数入门 48 | 49 | http://www.365yg.com/item/6445599317150401037/ 50 | 51 | * 10_kotlin语言boolean 52 | 53 | http://www.365yg.com/item/6445599312981262862/ 54 | 55 | * 11_kotlin命令行交互式终端 56 | 57 | http://www.365yg.com/item/6445601227924308494/ 58 | 59 | * 12_kotlin函数加强 60 | 61 | http://www.365yg.com/item/6445601229983711757/ 62 | 63 | * 13_kotlin函数作业讲解 64 | 65 | http://www.365yg.com/item/6445601232097640974/ 66 | 67 | * 14_kotlin字符串模版 68 | 69 | http://www.365yg.com/item/6445601234282873357/ 70 | 71 | * 15_kotlin条件控制if和else 72 | 73 | http://www.365yg.com/item/6445601236556186126/ 74 | 75 | * 16_kotlin字符串比较 76 | 77 | http://www.365yg.com/item/6445751177232515597/ 78 | 79 | * 17_kotlin空值处理 80 | 81 | http://www.365yg.com/item/6445752054030795278/ 82 | 83 | * 18_kotlin的when表达式 84 | 85 | http://www.365yg.com/item/6445754613458010638/ 86 | 87 | * 19_kotlin的loop和Range 88 | 89 | http://www.365yg.com/item/6445772006804685326/ 90 | 91 | * 20_kotlin的list和map入门 92 | 93 | http://www.365yg.com/item/6445776370827002382/ 94 | 95 | * 21_kotlin函数和函数式表达式 96 | 97 | http://www.365yg.com/item/6445777260019450382/ 98 | 99 | * 22_kotlin默认参数和具名参数 100 | 101 | http://www.365yg.com/item/6445778515232031245/ 102 | 103 | * 23_kotlin字符串和数字之间的转换 104 | 105 | http://www.365yg.com/item/6445779198962303501/ 106 | 107 | * 24_kotlin人机交互 108 | 109 | http://www.365yg.com/item/6445780073856369165/ 110 | 111 | * 25_kotlin异常处理 112 | 113 | http://www.365yg.com/item/6445781489274585613/ 114 | 115 | * 26_kotlin递归 116 | 117 | http://www.365yg.com/item/6445782843170750990/ 118 | 119 | * 27_kotlin尾递归优化 120 | 121 | http://www.365yg.com/item/6445785393433412110/ 122 | 123 | * 28_kotlin新的篇章idea使用入门 124 | 125 | http://www.365yg.com/item/6445786897338860045/ 126 | 127 | * 29_kotlin面向对象入门 128 | 129 | http://www.365yg.com/item/6445788208776086029/ 130 | 131 | * 30_kotlin静态属性和动态行为 132 | 133 | http://www.365yg.com/item/6445788927897895438/ 134 | 135 | * 31_kotlin面向对象概念入门 136 | 137 | http://www.365yg.com/item/6445789963647713806/ 138 | 139 | * 32_kotlin面向对象实战 140 | 141 | http://www.365yg.com/item/6445800737300546061/ 142 | 143 | * 33_kotlin面向对象实战-洗衣机升级 144 | 145 | http://www.365yg.com/item/6445795869391323661/ 146 | 147 | * 34_kotlin面向对象实战-封装 148 | 149 | http://www.365yg.com/item/6445796836392305166/ 150 | 151 | * 35_kotlin面向对象-继承(open和override) 152 | 153 | http://www.365yg.com/item/6445798149792465422/ 154 | 155 | * 36_kotlin抽象类和继承 156 | 157 | http://www.365yg.com/item/6445799199903580686/ 158 | 159 | * 37_kotlin面向对象-多态 160 | 161 | http://www.365yg.com/item/6445799900012610061/ 162 | 163 | * 38_kotlin面向对象-抽象类和接口 164 | 165 | http://www.365yg.com/item/6445803237701321230/ 166 | 167 | * 39_kotlin面向对象-委托和代理 168 | 169 | http://www.365yg.com/item/6445804765518496269/ 170 | 171 | * 40_kotlin面向对象-单例模式 172 | 173 | http://www.365yg.com/item/6445805583856566797/ 174 | 175 | * 41_kotlin面向对象-枚举 176 | 177 | http://www.365yg.com/item/6445806126301708814/ 178 | 179 | * 42_kotlin面向对象-密封类 180 | 181 | http://www.365yg.com/item/6445807030564291085/ 182 | 183 | * 43_kotlin后续录制计划 184 | 185 | http://www.365yg.com/item/6445807663321186830/ 186 | 187 | * 44_kotlin闭包(closure) 188 | 189 | http://www.365yg.com/item/6446657322759488014/ 190 | 191 | * 45_kotlin函数式编程入门 192 | 193 | http://www.365yg.com/item/6447022080331350541/ 194 | 195 | * 46_kotlin图片处理 196 | 197 | http://www.365yg.com/item/6448890155515249165/ 198 | 199 | * 48_kotlin高阶函数实战(传统函数演示) 200 | 201 | http://toutiao.com/item/6451475254085681677/ 202 | 203 | * 49_kotlin高阶函数实战(传统需求实现的缺点) 204 | 205 | http://toutiao.com/item/6451475398579454477/ 206 | 207 | * 50_kotlin高阶函数实战(3) 208 | 209 | http://toutiao.com/item/6451477425070014989/ 210 | 211 | * 51_kotlin高阶函数实战-自定义dsl入门 212 | 213 | http://toutiao.com/item/6451483115935236622/ 214 | 215 | * 更多高阶课程, 请参考腾讯课堂 216 | 217 | https://ke.qq.com/course/233042 218 | 219 | 220 | 221 | 222 | # 项目案例 223 | 224 | * 十分钟人人能学会开发开源中国 225 | 226 | ![](http://upload-images.jianshu.io/upload_images/4037105-2904aecba10fb30e.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) 227 | 228 | ### 整个项目视频如下: 229 | 230 | * [一行代码开发开源中国资讯页面](https://v.qq.com/x/page/x0377kx11yw.html) 231 | 232 | * [一分钟给RecyView添加head](https://v.qq.com/x/page/w0377wywkal.html) 233 | 234 | * [一行代码实现轮播图](https://v.qq.com/x/page/p03772kw9rp.html) 235 | 236 | 237 | * [一分钟实现下拉刷新和加载更多数据](https://v.qq.com/x/page/z0379qf8zwm.html) 238 | 239 | * [一分钟完成博客](https://v.qq.com/x/page/c0380241trz.html) 240 | 241 | 242 | * [一分钟完成详情页面](https://v.qq.com/x/page/k03950ywjdm.html) 243 | 244 | 245 | * [一分钟解析XML](https://v.qq.com/x/page/r03959jvnjm.html) 246 | 247 | * [一分钟完成详情相关软件](https://v.qq.com/x/page/f0380qhwr2y.html) 248 | 249 | 250 | 251 | * [一分钟完成评论盖楼](https://v.qq.com/x/page/d0380vt15sw.html) 252 | 253 | 254 | * [一分钟登录](https://v.qq.com/x/page/p0395khlfdz.html) 255 | 256 | 257 | * [一分钟获取cookie](https://v.qq.com/x/page/k039560yh2g.html) 258 | 259 | 260 | * [一分钟发布评论](https://v.qq.com/x/page/p0395xqsbq6.html) 261 | 262 | * [一分钟抓包](https://v.qq.com/x/page/f038221p7j2.html) 263 | 264 | 265 | 266 | 267 | ### Android面试题 268 | 269 | ![](http://upload-images.jianshu.io/upload_images/4037105-4437ab22b7af3cc8.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) 270 | 271 | ![](http://upload-images.jianshu.io/upload_images/4037105-22abf62d3d9f68a5.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) 272 | 273 | ![](http://upload-images.jianshu.io/upload_images/4037105-6838fa267298201a.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) 274 | 275 | 276 | ![](http://upload-images.jianshu.io/upload_images/4037105-c8d1161109029383.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) 277 | 278 | ### 整个面试题视频如下(持续更新中): 279 | 280 | #### 与IPC机制相关面试题 281 | 282 | * [1- Davik进程linux进程线程之间的区别](https://v.qq.com/x/page/a03916l1n7h.html) 283 | 284 | * [2- aidl实现进程间通信](https://v.qq.com/x/page/m0391pnoyl7.html) 285 | 286 | * [3- messenger实现进程间通信](https://v.qq.com/x/page/t0391b2gjm5.html) 287 | 288 | * [4- ContentProvider实现进程间通信](https://v.qq.com/x/page/v0391vx3ynb.html) 289 | 290 | #### 与性能优化相关试题 291 | 292 | * [5- 什么是内存泄漏](https://v.qq.com/x/page/n0391if5dtb.html) 293 | 294 | * [6- 什么是内存溢出](https://v.qq.com/x/page/q03917e4zk5.html) 295 | 296 | * [7- 什么情况会导致内存泄漏](https://v.qq.com/x/page/j03927ullcj.html) 297 | 298 | * [8- 避免程序的OOM异常](https://v.qq.com/x/page/w0392bn6wto.html) 299 | 300 | * [9- 线程池原理](https://v.qq.com/x/page/u0393izwfut.html) 301 | 302 | * [10- UI性能优化](https://v.qq.com/x/page/j0393ytx9ob.html) 303 | 304 | * [11- 内存优化之字符串优化](https://v.qq.com/x/page/k0393ataw3l.html) 305 | 306 | * [12- 常见内存优化方式](https://v.qq.com/x/page/j0393gm2p7j.html) 307 | 308 | * [13- 性能分析之hierarchyviewer使用](https://v.qq.com/x/page/y0393sa0jlp.html) 309 | 310 | * [14- 性能分析之Lint规范代码](https://v.qq.com/x/page/d039381wbas.html) 311 | 312 | * [15- 性能分析之规避内存抖动](https://v.qq.com/x/page/x0393gf7qp6.html) 313 | 314 | * [16- 性能分析之内存检测工具介绍](https://v.qq.com/x/page/e03933o0tp7.html) 315 | 316 | #### 与XMPP相关试题 317 | 318 | * [17- 什么是XMPP和XMPP的数据格式](https://v.qq.com/x/page/t0394w3zhoa.html) 319 | 320 | * [18- 及时聊天的展示形式](https://v.qq.com/x/page/k0394y5jo6d.html) 321 | 322 | * [19- TCP和UDP协议](https://v.qq.com/x/page/b0394lzj76e.html) 323 | 324 | * [20- 极光推送原理](https://v.qq.com/x/page/h0394a7zioh.html) 325 | 326 | * [21- XMPP的基本概念](https://v.qq.com/x/page/s0394k4p10i.html) 327 | 328 | * [22- 常见消息推送的解决方案](https://v.qq.com/x/page/h0394s3mc5k.html) 329 | 330 | #### 与登录相关试题 331 | 332 | 333 | * [23- 微信扫一扫登录内部实现原理](https://v.qq.com/x/page/u03952rbbkc.html) 334 | 335 | * [24- 腾讯QQ三方登录实现原理](https://v.qq.com/x/page/p03953hoam3.html) 336 | 337 | * [25- 登录为什么要使用Token](https://v.qq.com/x/page/c0395s3jd4f.html) 338 | 339 | #### 与开发相关试题 340 | 341 | * [26- 迭代开发的时候如何向前兼容新旧接口](https://v.qq.com/x/page/a0395pv28zm.html) 342 | 343 | * [27- 应用程序的开发流程](https://v.qq.com/x/page/v0395agrpdw.html) 344 | 345 | * [28- ViewPager加载页面过多bug演示](https://v.qq.com/x/page/n0501ylwqx1.html) 346 | 347 | * [29- ViewPager加载页面过多方案解决](https://v.qq.com/x/page/g05012qi6hs.html) 348 | 349 | * [30- 静默安装](https://v.qq.com/x/page/k0501fbjwcv.html) 350 | 351 | * [31- Android源码编译](https://v.qq.com/x/page/f0501jbulwc.html) 352 | 353 | * [50- TTF修改文本字体](http://www.365yg.com/item/6432842632887534081/) 354 | 355 | * [51- Sharesdk使用详细步骤](http://www.365yg.com/item/6432184209137205762/) 356 | 357 | * [52- 屏幕适配](http://www.365yg.com/item/6432175406685618689/) 358 | 359 | * [53- 接口回调](http://www.365yg.com/item/6432150647491002881/) 360 | 361 | * [54- XML转成VIEW原理](http://www.365yg.com/item/6432148274416714242/) 362 | 363 | 364 | #### 源码相关试题 365 | 366 | * [32- Volley源码一](https://v.qq.com/x/page/s05002geql6.html) 367 | 368 | * [33- Volley源码二](https://v.qq.com/x/page/h05002uijux.html) 369 | 370 | * [34- Volley源码三](https://v.qq.com/x/page/c05005gcs36.html) 371 | 372 | * [35- OkHttp3源码一](https://v.qq.com/x/page/j050015e4sm.html) 373 | 374 | * [36- OkHttp3源码二](https://v.qq.com/x/page/i05006qtood.html) 375 | 376 | * [37- OkHttp3源码三](https://v.qq.com/x/page/y0500461od9.html) 377 | 378 | * [38- 注解框架原理](https://v.qq.com/x/page/l0397qgxmkc.html) 379 | 380 | * [39- Context原理](https://v.qq.com/x/page/y0396os8vc6.html) 381 | 382 | * [40- App启动优化](https://v.qq.com/x/page/v0396aro8d1.html) 383 | 384 | 385 | ### Android系统定制配套视频: 386 | * [android系统定制-初识源码级开发](http://www.365yg.com/item/6432791134493213186/) 387 | * [android系统定制-Vbox及Ubuntu的安装](http://toutiao.com/item/6432821122323972610/) 388 | * [android系统定制-常见Linux命令介绍-上](http://toutiao.com/item/6432823051523457538/) 389 | * [android系统定制-常见Linux命令介绍-下](http://toutiao.com/item/6432826510821818881/) 390 | * [android系统定制-OpenJDK和依赖包的安装&配置USB访问权限](http://www.365yg.com/item/6434362415713878530/) 391 | * [android系统定制-其他可选配置介绍](http://www.365yg.com/item/6434633590172025346/) 392 | * [android系统定制-AOSP源码的下载](http://toutiao.com/item/6434633933505167873/) 393 | * [android系统定制-Repo的工作原理](http://toutiao.com/item/6434640927519670785/) 394 | * [android系统定制-源码下载的其他配置](http://www.365yg.com/item/6435007280990650881/) 395 | * [android系统定制-Nexus驱动的下载安装&源码编译](http://toutiao.com/item/6435007754082976258/) 396 | * [android系统定制-编译结果展示&刷机介绍&Android系统分区&out目录介绍](http://toutiao.com/item/6436594902649274881/) 397 | * [android系统定制-AOSP下的一些常用命令](http://toutiao.com/item/6436590437795889665/) 398 | * [android系统定制-AOSP常见工作目录介绍](http://www.365yg.com/item/6436589910819340801/) 399 | * [android系统定制-AndroidBuildSystem介绍](http://www.toutiao.com/i6436361010902204929/) 400 | * [android系统定制-系统开发做什么](http://www.toutiao.com/i6436848445700440578/) 401 | * [android系统定制-Android系统启动流程-从Init到Zygote](http://www.toutiao.com/i6436589000256913921/) 402 | * [android系统定制-Android系统启动流程-从syste_server到Launcher](http://www.toutiao.com/i6436849268975206913/) 403 | * [android系统定制-修改系统APP后进行编译](http://www.toutiao.com/i6436850885292196353/) 404 | * [android系统定制-Dalvik&ART的区别及ODEX文件介绍](http://www.toutiao.com/i6436851843262841346/) 405 | * [android系统定制-编译时odex化的原因](http://www.toutiao.com/i6436852898566504962/) 406 | * [android系统定制-修改Calclator.apk代码并运行](http://www.toutiao.com/i6436853799767245314/) 407 | * [android系统定制-Framework定制及Mac环境介绍](http://www.toutiao.com/i6436853139567018498/) 408 | * [android系统定制-services.jar&framework.jar的修改与运行](http://www.toutiao.com/i6436857505522909698/) 409 | * [android系统定制-libandroid_runtime.so(JNI层)的修改与运行](http://www.toutiao.com/i6436857259367596545/) 410 | * [android系统定制-liblog.so(native层)的修改与编译](http://www.toutiao.com/i6436857357145211394/) 411 | * [android系统定制-系统开发实战回顾](http://www.toutiao.com/i6436859125199536641/) 412 | * [android系统定制-系统级开发的职业发展](http://www.toutiao.com/i6436351531619975682/) 413 | 414 | # 第一部分联网引擎: 415 | 416 | https://github.com/open-android/Android2 417 | 418 | 419 | 420 | 421 | 422 | # 第二部分自定义控件: 423 | 424 | https://github.com/open-android/Android1 425 | 426 | 427 | 428 | 429 | 430 | # 第三部分音视频: 431 | 432 | https://github.com/open-android/Android3 433 | 434 | 435 | 436 | 437 | 438 | # 第四部分工具类 439 | 440 | 441 | * [LeakCanary](https://github.com/open-android/LeakCanaryDemo) 内存泄漏检测工具 442 | * [配套视频](https://www.boxuegu.com/web/html/video.html?courseId=172§ionId=8a9bdf305a3a4c00015a500b7aac01d2&chapterId=8a9bdf305a3a4c00015a500ba7db01d3&vId=8a9bdf305a3a4c00015a500bf5120263&videoId=C51690BA657EBB359C33DC5901307461) 443 | 444 | 445 | * [jsoup](https://github.com/open-android/jsoup) 网页解析器 446 | 447 | * [配套视频](https://www.boxuegu.com/web/html/video.html?courseId=172§ionId=8a2c9bed5a3a4c7e015a4aa700eb0a2a&chapterId=8a2c9bed5a3a4c7e015a4aa767150a2b&vId=8a2c9bed5a3a4c7e015a4aa7ad870a2c&videoId=D9C78456B7F047A79C33DC5901307461) 448 | 449 | ![](http://upload-images.jianshu.io/upload_images/4037105-30331e481fb8d6a0.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) 450 | 451 | 452 | 453 | * [pinyin4j](https://github.com/open-android/pinyin4j) 拼音汉字互转 454 | * [配套视频](https://www.boxuegu.com/web/html/video.html?courseId=172§ionId=8a2c9bed5a3a4c7e015a4aa63c6309a4&chapterId=8a2c9bed5a3a4c7e015a4aa6800909a5&vId=8a2c9bed5a3a4c7e015a4aa6b4a609a6&videoId=170FDD1C8418EF049C33DC5901307461) 455 | 456 | ![](http://upload-images.jianshu.io/upload_images/4037105-2b116ed70bc02063.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) 457 | 458 | 459 | 460 | 461 | 462 | 463 | 464 | * [Gson](https://github.com/open-android/Gson) 465 | * [配套视频](https://www.boxuegu.com/web/html/video.html?courseId=172§ionId=8a2c9bed5a3a4c7e015a3ad9a490030d&chapterId=8a2c9bed5a3a4c7e015a3ab4a8fc01ba&vId=8a2c9bed5a3a4c7e015a3bddf83c0862&videoId=43F77AE0DB66FB6C9C33DC5901307461) 466 | 467 | ![](http://upload-images.jianshu.io/upload_images/4037105-1b3ae80523e53a85.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) 468 | 469 | 470 | * [BridgeWebView](https://github.com/open-android/BridgeWebView) android和js互调 471 | * [配套视频](https://www.boxuegu.com/web/html/video.html?courseId=172§ionId=8a2c9bed5a3a4c7e015a3bbffc6107ed&chapterId=8a2c9bed5a3a4c7e015a3b06a0be0698&vId=8a2c9bed5a3a4c7e015a3adf255203f2&videoId=C00D92795CD598059C33DC5901307461) 472 | 473 | ![](http://upload-images.jianshu.io/upload_images/4037105-72ab8d12ecb1887c.gif?imageMogr2/auto-orient/strip) 474 | 475 | 476 | * [RxjavaUtils](https://github.com/open-android/RxjavaUtils) 477 | * [配套视频](https://www.boxuegu.com/web/html/video.html?courseId=172§ionId=8a2c9bed5a3a4c7e015a3add4703037f&chapterId=8a2c9bed5a3a4c7e015a3add6c480380&vId=8a2c9bed5a3a4c7e015a3adda8f30381&videoId=0208419D0BB20CAB9C33DC5901307461) 478 | 479 | 480 | 481 | 482 | 483 | 484 | * [Zxing](https://github.com/open-android/Zxing) 485 | 486 | ![](http://upload-images.jianshu.io/upload_images/4037105-328f894e68f34617.gif?imageMogr2/auto-orient/strip) 487 | 488 | 489 | 490 | * [Logger](https://github.com/open-android/Logger) 491 | 492 | ![](http://upload-images.jianshu.io/upload_images/4037105-25e3816a79bfe259.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) 493 | 494 | 495 | 496 | 497 | 498 | 499 | 500 | 501 | 502 | # 第五部分图片加载 503 | 504 | * [Picasso](https://github.com/open-android/Picasso) 505 | * [配套视频](https://www.boxuegu.com/web/html/video.html?courseId=172§ionId=8a2c9bed5a3a4c7e015a3bbffc6107ed&chapterId=8a2c9bed5a3a4c7e015a3affe39a046a&vId=8a2c9bed5a3a4c7e015a3b0451f105b8&videoId=B33E67E868CDB1D19C33DC5901307461) 506 | 507 | ![](http://upload-images.jianshu.io/upload_images/4037105-ece55ae2ca9b3003.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) 508 | 509 | 510 | 511 | * [Picasso-transformations](https://github.com/open-android/Picasso-transformations) 512 | * [配套视频](https://www.boxuegu.com/web/html/video.html?courseId=172§ionId=8a2c9bed5a3a4c7e015a3bbffc6107ed&chapterId=8a2c9bed5a3a4c7e015a3afea6140464&vId=8a2c9bed5a3a4c7e015a3b0482c10627&videoId=A9996ED78AAC2B7B9C33DC5901307461) 513 | 514 | ![](http://upload-images.jianshu.io/upload_images/4037105-e317677935993817.gif?imageMogr2/auto-orient/strip) 515 | 516 | 517 | * [Glide](https://github.com/open-android/Glide) 518 | * [配套视频](https://www.boxuegu.com/web/html/video.html?courseId=172§ionId=8a2c9bed5a3a4c7e015a3bbffc6107ed&chapterId=8a2c9bed5a3a4c7e015a3aff408e0467&vId=8a2c9bed5a3a4c7e015a3b03c546046b&videoId=068DCD08470172549C33DC5901307461) 519 | 520 | ![](http://upload-images.jianshu.io/upload_images/4037105-ece55ae2ca9b3003.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) 521 | 522 | 523 | 524 | * [Universal-Image-Loader](https://github.com/open-android/Universal-Image-Loader) 525 | * [配套视频](https://www.boxuegu.com/web/html/video.html?courseId=172§ionId=8a2c9bed5a3a4c7e015a3bbffc6107ed&chapterId=8a2c9bed5a3a4c7e015a3ad76a12029c&vId=8a2c9bed5a3a4c7e015a3b0428540549&videoId=1E1712DA85A8B6A99C33DC5901307461) 526 | 527 | ![](http://upload-images.jianshu.io/upload_images/4037105-84f750f7e494bdf6.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) 528 | 529 | 530 | * [Glide-transformations](https://github.com/open-android/Glide-transformations) 531 | * [配套视频](https://www.boxuegu.com/web/html/video.html?courseId=172§ionId=8a2c9bed5a3a4c7e015a3bbffc6107ed&chapterId=8a2c9bed5a3a4c7e015a3b0c9441077a&vId=8a2c9bed5a3a4c7e015a3b03f3bd04da&videoId=13CAE14707B5911C9C33DC5901307461) 532 | 533 | ![](http://upload-images.jianshu.io/upload_images/4037105-e317677935993817.gif?imageMogr2/auto-orient/strip) 534 | 535 | 536 | 537 | # 第六部分数据库 538 | 539 | * [GreenDao](https://github.com/open-android/GreenDao3.2) 540 | * [配套视频](https://www.boxuegu.com/web/html/video.html?courseId=172§ionId=8a9bdf305a3a4c00015a5008c0b900b0&chapterId=8a9bdf305a3a4c00015a5008fcca00b1&vId=8a9bdf305a3a4c00015a500a10a300b2&videoId=5665D92F3A2D1BFA9C33DC5901307461) 541 | 542 | 543 | * [OrmLite](https://github.com/open-android/OrmLiteDemo) 544 | * [配套视频](https://www.boxuegu.com/web/html/video.html?courseId=172§ionId=8a9bdf305a3a4c00015a500ad0490141&chapterId=8a9bdf305a3a4c00015a500afc6c0142&vId=8a9bdf305a3a4c00015a500b24cf0143&videoId=471D4682107323DF9C33DC5901307461) 545 | 546 | 547 | 548 | 549 | 550 | --------------------------------------------------------------------------------