From aef6d5896a8b9182866d6460e70016b9e5ecea3e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=85=B3=E7=8E=AE=E7=90=B3=40linsir=2Etop?= Date: Thu, 21 Jun 2018 21:41:33 +0800 Subject: [PATCH 01/30] Update README.md --- README.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 66e15bb..51c376b 100644 --- a/README.md +++ b/README.md @@ -133,7 +133,9 @@ - [JVM结构、GC工作机制详解](http://blog.csdn.net/tonytfjing/article/details/44278233) - [深入理解Activity的生命周期](https://www.jianshu.com/p/fb44584daee3) - [2017-Android暑期实习生面试经验谈](http://lruheng.com/2017/05/09/2017-Android%E6%9A%91%E6%9C%9F%E5%AE%9E%E4%B9%A0%E7%94%9F%E9%9D%A2%E8%AF%95%E7%BB%8F%E9%AA%8C%E8%B0%88/) -- [深入探讨 Java 类加载器](https://www.ibm.com/developerworks/cn/java/j-lo-classloader/) +- [深入探讨 + +类加载器](https://www.ibm.com/developerworks/cn/java/j-lo-classloader/) - [找到无序数组中最小的K个数](https://www.cnblogs.com/xiaomoxian/archive/2016/02/11/5186762.html) - [字符编码笔记:ASCII,Unicode和UTF-8](http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html) - [Android 消息机制——你真的了解Handler?](http://blog.csdn.net/qian520ao/article/details/78262289?locationNum=2&fps=1) @@ -248,7 +250,7 @@ - [JVM虚拟机基础知识](/JavaNote/Java相关/JVM虚拟机基础知识.md) - [JVM类加载器](/JavaNote/Java相关/JVM类加载器.md) - [Javase基础知识](https://github.com/francistao/LearningNotes/blob/master/Part2/JavaSE/Java基础知识.md) - +- [SparseArray 的使用及实现原理](http://extremej.itscoder.com/sparsearray_source_analyse/) ### JavaEE相关 From e6b928750b89facaa856e3d5401752b738be2933 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=85=B3=E7=8E=AE=E7=90=B3=40linsir=2Etop?= Date: Thu, 21 Jun 2018 21:46:37 +0800 Subject: [PATCH 02/30] Update README.md --- README.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/README.md b/README.md index 51c376b..e4458d1 100644 --- a/README.md +++ b/README.md @@ -133,9 +133,7 @@ - [JVM结构、GC工作机制详解](http://blog.csdn.net/tonytfjing/article/details/44278233) - [深入理解Activity的生命周期](https://www.jianshu.com/p/fb44584daee3) - [2017-Android暑期实习生面试经验谈](http://lruheng.com/2017/05/09/2017-Android%E6%9A%91%E6%9C%9F%E5%AE%9E%E4%B9%A0%E7%94%9F%E9%9D%A2%E8%AF%95%E7%BB%8F%E9%AA%8C%E8%B0%88/) -- [深入探讨 - -类加载器](https://www.ibm.com/developerworks/cn/java/j-lo-classloader/) +- [深入探讨类加载器](https://www.ibm.com/developerworks/cn/java/j-lo-classloader/) - [找到无序数组中最小的K个数](https://www.cnblogs.com/xiaomoxian/archive/2016/02/11/5186762.html) - [字符编码笔记:ASCII,Unicode和UTF-8](http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html) - [Android 消息机制——你真的了解Handler?](http://blog.csdn.net/qian520ao/article/details/78262289?locationNum=2&fps=1) From c70cfad39c3a1bce8aec099a1e58e5d8605b9db5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=85=B3=E7=8E=AE=E7=90=B3=40linsir=2Etop?= Date: Thu, 21 Jun 2018 22:08:00 +0800 Subject: [PATCH 03/30] Update README.md --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index e4458d1..2813ed9 100644 --- a/README.md +++ b/README.md @@ -82,6 +82,9 @@ - [Android Studio3.0更新之路(遇坑必入)](http://www.jianshu.com/p/15afb8234d19) - [Android Studio3.0正式版填坑路](http://www.jianshu.com/p/9b25087a5d7d) - [Android混合编程:WebView实践](https://juejin.im/post/59f17a7051882546d71e91a7) +- [runOnUiThread 、Handler.post、View.post之间的区别](https://blog.csdn.net/dengpeng_/article/details/78804404) +- [理解 Activity.runOnUiThread](https://www.jianshu.com/p/e39449026f21) +- [说说 getMainLooper](http://www.icodeyou.com/2015/10/11/2015-10-11-getMainLooper/) From 18a6f048daeea2bc77dc1ed57cbe65b1d180f330 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=85=B3=E7=8E=AE=E7=90=B3=40linsir=2Etop?= Date: Tue, 3 Jul 2018 20:56:49 +0800 Subject: [PATCH 04/30] Update README.md --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 2813ed9..a8be305 100644 --- a/README.md +++ b/README.md @@ -39,6 +39,8 @@ ### Android进阶 +- [Android 触控事件解析 - Mastering The Android Touch System 笔记 +](https://www.jianshu.com/p/c65da5e81afd) - [Android 多进程使用场景](http://blog.csdn.net/qq_27489007/article/details/54377655) - [Android官网建议代码规范](https://source.android.com/source/code-style#java-language-rules) - [30多年编码经验总结成10条最佳实践](https://mp.weixin.qq.com/s?__biz=MzIyMjQ0MTU0NA==&mid=2247484524&idx=1&sn=5b2759e6d89f01e61d021545ca7556b9&chksm=e82c3d4bdf5bb45dd77227982931ede8229ee6910829253a57bb905e810c89bd3f0a162786e8&mpshare=1&scene=23&srcid=1023FjKcLWtRlcDpwEeeJnCN#rd) From 865676f9b3ca52c63b97b25b90edaa003abdb766 Mon Sep 17 00:00:00 2001 From: linsir Date: Sun, 8 Jul 2018 17:16:17 +0800 Subject: [PATCH 05/30] =?UTF-8?q?add=20=E5=AD=A6=E4=B9=A0=E6=96=87?= =?UTF-8?q?=E7=AB=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/README.md b/README.md index a8be305..cec4967 100644 --- a/README.md +++ b/README.md @@ -89,6 +89,14 @@ - [说说 getMainLooper](http://www.icodeyou.com/2015/10/11/2015-10-11-getMainLooper/) +### Gradle相关 + +- [如何理解 Transform API](https://juejin.im/entry/59776f2bf265da6c4741db2b) +- [Gradle自定义插件详解](https://www.jianshu.com/p/03eb55536298) +- [Android 突破 DEX 文件的 64k方法数限制](http://yifeng.studio/2016/10/26/android-64k-methods-count/) +- [Android Dex分包之旅](http://yydcdut.com/2016/03/20/split-dex/) +- [美团Android DEX自动拆包及动态加载简介](https://tech.meituan.com/mt-android-auto-split-dex.html) + ### 自定义View From b47dd1fe9724159f59eb5b1d180a42a6024155e8 Mon Sep 17 00:00:00 2001 From: linsir Date: Sun, 8 Jul 2018 18:32:01 +0800 Subject: [PATCH 06/30] =?UTF-8?q?=E5=8B=98=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...04\346\274\217\346\200\273\347\273\223.md" | 26 ------------------- 1 file changed, 26 deletions(-) diff --git "a/AndroidNote/Android\350\277\233\351\230\266/Android\345\206\205\345\255\230\346\263\204\346\274\217\346\200\273\347\273\223.md" "b/AndroidNote/Android\350\277\233\351\230\266/Android\345\206\205\345\255\230\346\263\204\346\274\217\346\200\273\347\273\223.md" index f1cda55..5165f3a 100644 --- "a/AndroidNote/Android\350\277\233\351\230\266/Android\345\206\205\345\255\230\346\263\204\346\274\217\346\200\273\347\273\223.md" +++ "b/AndroidNote/Android\350\277\233\351\230\266/Android\345\206\205\345\255\230\346\263\204\346\274\217\346\200\273\347\273\223.md" @@ -123,33 +123,7 @@ o = null; 在这个例子中,循环申请Object 对象,并将所申请的对象放入一个Vector 中,如果仅仅释放引用本身(o=null),那么Vector 仍然引用该对象,所以这个对象对GC 来说是不可回收的。因此,如果对象加入到Vector 后,还必须从Vector 中删除,最简单的方法就是将Vector对象设置为null。 -2、当集合里面的对象属性被修改后,再调用remove()方法时不起作用。 -例如: - -``` -public static void main(String[] args) -{ -Set set = new HashSet(); -Person p1 = new Person("唐僧","pwd1",25); -Person p2 = new Person("孙悟空","pwd2",26); -Person p3 = new Person("猪八戒","pwd3",27); -set.add(p1); -set.add(p2); -set.add(p3); -System.out.println("总共有:"+set.size()+" 个元素!"); //结果:总共有:3 个元素! -p3.setAge(2); //修改p3的年龄,此时p3元素对应的hashcode值发生改变 - -set.remove(p3); //此时remove不掉,造成内存泄漏 - -set.add(p3); //重新添加,居然添加成功 -System.out.println("总共有:"+set.size()+" 个元素!"); //结果:总共有:4 个元素! -for (Person person : set) -{ -System.out.println(person); -} -} -``` 3、监听器 From ad69a3a88288a4447cee83d07fefd7884817c0e5 Mon Sep 17 00:00:00 2001 From: linsir Date: Mon, 9 Jul 2018 20:33:39 +0800 Subject: [PATCH 07/30] =?UTF-8?q?add=20=E8=A7=A3=E6=9E=90ConstraintLayout?= =?UTF-8?q?=E7=9A=84=E6=80=A7=E8=83=BD=E4=BC=98=E5=8A=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index cec4967..173d733 100644 --- a/README.md +++ b/README.md @@ -35,6 +35,7 @@ - [初识ConstraintLayout](https://mp.weixin.qq.com/s?__biz=MzI0MjE3OTYwMg==&mid=2649548068&idx=1&sn=f750ae79c9458f89c3cf85f7573ba579&scene=21#wechat_redirect) - [TabLayout记录](/AndroidNote/Android基础/tablayout记录.md) - [用SpannableString打造绚丽多彩的文本显示效果](http://www.jianshu.com/p/84067ad289d2) +- [解析ConstraintLayout的性能优势](https://mp.weixin.qq.com/s/gGR2itbY7hh9fo61SxaMQQ) ### Android进阶 From c0258c1454fd9ac09ffa9f3ee432387422bcc2cc Mon Sep 17 00:00:00 2001 From: linsir Date: Mon, 9 Jul 2018 20:54:03 +0800 Subject: [PATCH 08/30] =?UTF-8?q?add=20Android=E6=96=B0=E7=89=B9=E6=80=A7?= =?UTF-8?q?=E4=BB=8B=E7=BB=8D=EF=BC=8CConstraintLayout=E5=AE=8C=E5=85=A8?= =?UTF-8?q?=E8=A7=A3=E6=9E=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 173d733..097c95a 100644 --- a/README.md +++ b/README.md @@ -36,6 +36,7 @@ - [TabLayout记录](/AndroidNote/Android基础/tablayout记录.md) - [用SpannableString打造绚丽多彩的文本显示效果](http://www.jianshu.com/p/84067ad289d2) - [解析ConstraintLayout的性能优势](https://mp.weixin.qq.com/s/gGR2itbY7hh9fo61SxaMQQ) +- [Android新特性介绍,ConstraintLayout完全解析](https://blog.csdn.net/guolin_blog/article/details/53122387) ### Android进阶 From 1b8fc52387508a166da405eea995775bb996d1ab Mon Sep 17 00:00:00 2001 From: linsir Date: Mon, 9 Jul 2018 21:44:38 +0800 Subject: [PATCH 09/30] =?UTF-8?q?add=20Android=E6=96=B0=E7=89=B9=E6=80=A7?= =?UTF-8?q?=E4=BB=8B=E7=BB=8D=EF=BC=8CConstraintLayout=E5=AE=8C=E5=85=A8?= =?UTF-8?q?=E8=A7=A3=E6=9E=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 097c95a..32d3a00 100644 --- a/README.md +++ b/README.md @@ -37,6 +37,7 @@ - [用SpannableString打造绚丽多彩的文本显示效果](http://www.jianshu.com/p/84067ad289d2) - [解析ConstraintLayout的性能优势](https://mp.weixin.qq.com/s/gGR2itbY7hh9fo61SxaMQQ) - [Android新特性介绍,ConstraintLayout完全解析](https://blog.csdn.net/guolin_blog/article/details/53122387) +- [Android新特性介绍,ConstraintLayout完全解析](https://blog.csdn.net/guolin_blog/article/details/53122387) ### Android进阶 From 17a166eebbfa4f76654f2a72b5658eb98b70bca7 Mon Sep 17 00:00:00 2001 From: linsir Date: Tue, 10 Jul 2018 18:40:42 +0800 Subject: [PATCH 10/30] =?UTF-8?q?add=20=E6=BB=B4=E6=BB=B4=E6=8F=92?= =?UTF-8?q?=E4=BB=B6=E5=8C=96=E6=96=B9=E6=A1=88=20VirtualApk=20=E6=BA=90?= =?UTF-8?q?=E7=A0=81=E8=A7=A3=E6=9E=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index 32d3a00..d305e6a 100644 --- a/README.md +++ b/README.md @@ -100,6 +100,10 @@ - [Android Dex分包之旅](http://yydcdut.com/2016/03/20/split-dex/) - [美团Android DEX自动拆包及动态加载简介](https://tech.meituan.com/mt-android-auto-split-dex.html) +### 插件化相关 + +- [滴滴插件化方案 VirtualApk 源码解析](https://blog.csdn.net/lmj623565791/article/details/75000580) + ### 自定义View From 9c0f17ba44b5b806096d1a5954292117e6b9ffb6 Mon Sep 17 00:00:00 2001 From: linsir Date: Wed, 11 Jul 2018 22:00:25 +0800 Subject: [PATCH 11/30] =?UTF-8?q?add=E7=83=AD=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/README.md b/README.md index d305e6a..18b7881 100644 --- a/README.md +++ b/README.md @@ -105,6 +105,14 @@ - [滴滴插件化方案 VirtualApk 源码解析](https://blog.csdn.net/lmj623565791/article/details/75000580) +### 热修复相关 + +- [Android 热修复 Tinker Gradle Plugin解析](https://blog.csdn.net/lmj623565791/article/details/72667669) +- [Android 热修复 Tinker接入及源码浅析](https://blog.csdn.net/lmj623565791/article/details/54882693) +- [Android 热修复 Tinker 源码分析之DexDiff / DexPatch](https://blog.csdn.net/lmj623565791/article/details/60874334) + + + ### 自定义View - [自定义View入门](/AndroidNote/Android自定义View/自定义View入门.md) From b8bd21bcb8c6942514db57e4b7a4011b22c795f3 Mon Sep 17 00:00:00 2001 From: linsir Date: Thu, 12 Jul 2018 21:54:05 +0800 Subject: [PATCH 12/30] add note --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 18b7881..037c0ef 100644 --- a/README.md +++ b/README.md @@ -99,6 +99,7 @@ - [Android 突破 DEX 文件的 64k方法数限制](http://yifeng.studio/2016/10/26/android-64k-methods-count/) - [Android Dex分包之旅](http://yydcdut.com/2016/03/20/split-dex/) - [美团Android DEX自动拆包及动态加载简介](https://tech.meituan.com/mt-android-auto-split-dex.html) +- [gradle简单入门系列](http://www.cnblogs.com/davenkin/p/gradle-learning-1.html) ### 插件化相关 From 8cefa9ff551274f0fb511aa9f7dc9d9c4a118249 Mon Sep 17 00:00:00 2001 From: linsir Date: Mon, 16 Jul 2018 20:15:03 +0800 Subject: [PATCH 13/30] =?UTF-8?q?add=20add=20Gradle=E5=9F=BA=E7=A1=80?= =?UTF-8?q?=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 037c0ef..677602d 100644 --- a/README.md +++ b/README.md @@ -100,6 +100,8 @@ - [Android Dex分包之旅](http://yydcdut.com/2016/03/20/split-dex/) - [美团Android DEX自动拆包及动态加载简介](https://tech.meituan.com/mt-android-auto-split-dex.html) - [gradle简单入门系列](http://www.cnblogs.com/davenkin/p/gradle-learning-1.html) +- [Gradle简单配置](https://mp.weixin.qq.com/s/1UHcYOudViMhpUYeREZzGA) + ### 插件化相关 From 85d1e13abecedc847b21076d4d361d87cd299e27 Mon Sep 17 00:00:00 2001 From: linsir Date: Tue, 17 Jul 2018 18:30:10 +0800 Subject: [PATCH 14/30] =?UTF-8?q?add=20Android=20=E5=A6=82=E4=BD=95?= =?UTF-8?q?=E7=BC=96=E5=86=99=E5=9F=BA=E4=BA=8E=E7=BC=96=E8=AF=91=E6=97=B6?= =?UTF-8?q?=E6=B3=A8=E8=A7=A3=E7=9A=84=E9=A1=B9=E7=9B=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 677602d..0b5656f 100644 --- a/README.md +++ b/README.md @@ -101,6 +101,7 @@ - [美团Android DEX自动拆包及动态加载简介](https://tech.meituan.com/mt-android-auto-split-dex.html) - [gradle简单入门系列](http://www.cnblogs.com/davenkin/p/gradle-learning-1.html) - [Gradle简单配置](https://mp.weixin.qq.com/s/1UHcYOudViMhpUYeREZzGA) +- [Android 如何编写基于编译时注解的项目](https://blog.csdn.net/lmj623565791/article/details/51931859) ### 插件化相关 From 697f64b4e5867d2a736a5aa4c5b5144240b964d5 Mon Sep 17 00:00:00 2001 From: linsir Date: Tue, 17 Jul 2018 20:54:03 +0800 Subject: [PATCH 15/30] =?UTF-8?q?Android=20=E6=8E=A2=E7=A9=B6=20LayoutInfl?= =?UTF-8?q?ater=20setFactory?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 0b5656f..89ba50e 100644 --- a/README.md +++ b/README.md @@ -90,6 +90,7 @@ - [runOnUiThread 、Handler.post、View.post之间的区别](https://blog.csdn.net/dengpeng_/article/details/78804404) - [理解 Activity.runOnUiThread](https://www.jianshu.com/p/e39449026f21) - [说说 getMainLooper](http://www.icodeyou.com/2015/10/11/2015-10-11-getMainLooper/) +- [Android 探究 LayoutInflater setFactory](https://blog.csdn.net/lmj623565791/article/details/51503977) ### Gradle相关 From 4b1ce2d086c94323cfd34857bfb165c6b707c33d Mon Sep 17 00:00:00 2001 From: linsir Date: Tue, 17 Jul 2018 21:17:15 +0800 Subject: [PATCH 16/30] =?UTF-8?q?add=20=E5=B7=A7=E7=94=A8ViewPager=20?= =?UTF-8?q?=E6=89=93=E9=80=A0=E4=B8=8D=E4=B8=80=E6=A0=B7=E7=9A=84=E5=B9=BF?= =?UTF-8?q?=E5=91=8A=E8=BD=AE=E6=92=AD=E5=88=87=E6=8D=A2=E6=95=88=E6=9E=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 89ba50e..b2be8f0 100644 --- a/README.md +++ b/README.md @@ -91,6 +91,7 @@ - [理解 Activity.runOnUiThread](https://www.jianshu.com/p/e39449026f21) - [说说 getMainLooper](http://www.icodeyou.com/2015/10/11/2015-10-11-getMainLooper/) - [Android 探究 LayoutInflater setFactory](https://blog.csdn.net/lmj623565791/article/details/51503977) +- [巧用ViewPager 打造不一样的广告轮播切换效果](https://blog.csdn.net/lmj623565791/article/details/51339751) ### Gradle相关 From 81571249c1ec17b9c572ce70943c2352a23b98e6 Mon Sep 17 00:00:00 2001 From: linsir Date: Tue, 17 Jul 2018 21:52:37 +0800 Subject: [PATCH 17/30] =?UTF-8?q?add=20Retrofit2=20=E5=AE=8C=E5=85=A8?= =?UTF-8?q?=E8=A7=A3=E6=9E=90=20=E6=8E=A2=E7=B4=A2=E4=B8=8Eokhttp=E4=B9=8B?= =?UTF-8?q?=E9=97=B4=E7=9A=84=E5=85=B3=E7=B3=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index b2be8f0..b558de6 100644 --- a/README.md +++ b/README.md @@ -207,6 +207,7 @@ - [retrofit 2.0 源码解析](http://www.jianshu.com/p/0c055ad46b6c) - [关于 RxJava 背压](https://juejin.im/entry/58e704cbac502e4957b230eb) - [RxJava 2.0中backpressure(背压)概念的理解](https://blog.csdn.net/jdsjlzx/article/details/52717636) +- [Retrofit2 完全解析 探索与okhttp之间的关系](https://blog.csdn.net/lmj623565791/article/details/51304204) ### 打包 From bf265e0aaf94f5e537ab69174ad878ca24d93acb Mon Sep 17 00:00:00 2001 From: linsir Date: Wed, 18 Jul 2018 13:31:04 +0800 Subject: [PATCH 18/30] =?UTF-8?q?add=20=E4=B8=BARecyclerView=E6=89=93?= =?UTF-8?q?=E9=80=A0=E9=80=9A=E7=94=A8Adapter=20=E8=AE=A9RecyclerView?= =?UTF-8?q?=E6=9B=B4=E5=8A=A0=E5=A5=BD=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index b558de6..d09a933 100644 --- a/README.md +++ b/README.md @@ -92,6 +92,7 @@ - [说说 getMainLooper](http://www.icodeyou.com/2015/10/11/2015-10-11-getMainLooper/) - [Android 探究 LayoutInflater setFactory](https://blog.csdn.net/lmj623565791/article/details/51503977) - [巧用ViewPager 打造不一样的广告轮播切换效果](https://blog.csdn.net/lmj623565791/article/details/51339751) +- [为RecyclerView打造通用Adapter 让RecyclerView更加好用](https://blog.csdn.net/lmj623565791/article/details/51118836) ### Gradle相关 From 4ad4126cec8d408b8264992b2cff0484003c6c96 Mon Sep 17 00:00:00 2001 From: linsir Date: Thu, 19 Jul 2018 15:05:44 +0800 Subject: [PATCH 19/30] =?UTF-8?q?add=20Gradle=20=E5=AE=8C=E6=95=B4?= =?UTF-8?q?=E6=8C=87=E5=8D=97=EF=BC=88Android=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index d09a933..6c6f0b9 100644 --- a/README.md +++ b/README.md @@ -105,6 +105,7 @@ - [gradle简单入门系列](http://www.cnblogs.com/davenkin/p/gradle-learning-1.html) - [Gradle简单配置](https://mp.weixin.qq.com/s/1UHcYOudViMhpUYeREZzGA) - [Android 如何编写基于编译时注解的项目](https://blog.csdn.net/lmj623565791/article/details/51931859) +- [Gradle 完整指南(Android)](https://www.jianshu.com/p/9df3c3b6067a) ### 插件化相关 From 438919c25689593ce1ccd37ffa41741850971a7c Mon Sep 17 00:00:00 2001 From: linsir Date: Thu, 19 Jul 2018 16:11:15 +0800 Subject: [PATCH 20/30] =?UTF-8?q?add=20Android=20=E4=B8=80=E4=B8=AA?= =?UTF-8?q?=E6=97=A0=E9=99=90=E5=BE=AA=E7=8E=AF=E6=BB=9A=E5=8A=A8=E7=9A=84?= =?UTF-8?q?=E5=8D=A1=E7=89=87=E5=BC=8FViewPager?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 6c6f0b9..cd9635b 100644 --- a/README.md +++ b/README.md @@ -38,6 +38,7 @@ - [解析ConstraintLayout的性能优势](https://mp.weixin.qq.com/s/gGR2itbY7hh9fo61SxaMQQ) - [Android新特性介绍,ConstraintLayout完全解析](https://blog.csdn.net/guolin_blog/article/details/53122387) - [Android新特性介绍,ConstraintLayout完全解析](https://blog.csdn.net/guolin_blog/article/details/53122387) +- [Android 一个无限循环滚动的卡片式ViewPager](https://blog.csdn.net/qq_30552993/article/details/76208535) ### Android进阶 From f3b1ed3af0aa060a2f7d3e0b2ee7e76c50081ef3 Mon Sep 17 00:00:00 2001 From: linsir Date: Fri, 20 Jul 2018 21:55:29 +0800 Subject: [PATCH 21/30] =?UTF-8?q?add=20MNCrashMonitor=20=E7=9B=91=E5=90=AC?= =?UTF-8?q?=E7=A8=8B=E5=BA=8F=E5=B4=A9=E6=BA=83=E6=97=A5=E5=BF=97,?= =?UTF-8?q?=E7=9B=B4=E6=8E=A5=E9=A1=B5=E9=9D=A2=E5=B1=95=E7=A4=BA=E5=B4=A9?= =?UTF-8?q?=E6=BA=83=E6=97=A5=E5=BF=97=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index cd9635b..dd7d793 100644 --- a/README.md +++ b/README.md @@ -94,6 +94,7 @@ - [Android 探究 LayoutInflater setFactory](https://blog.csdn.net/lmj623565791/article/details/51503977) - [巧用ViewPager 打造不一样的广告轮播切换效果](https://blog.csdn.net/lmj623565791/article/details/51339751) - [为RecyclerView打造通用Adapter 让RecyclerView更加好用](https://blog.csdn.net/lmj623565791/article/details/51118836) +- [MNCrashMonitor 监听程序崩溃日志,直接页面展示崩溃日志列表](http://www.wanandroid.com/blog/show/2207) ### Gradle相关 From 68cc6a4a853d18452e295aff817f137e714c7010 Mon Sep 17 00:00:00 2001 From: linsir Date: Mon, 6 Aug 2018 20:15:36 +0800 Subject: [PATCH 22/30] =?UTF-8?q?add=20=E3=80=8E=E8=BF=9B=E9=98=B6?= =?UTF-8?q?=E4=B9=8B=E8=B7=AF=E3=80=8F=E2=80=94=E2=80=94=20=E7=BA=BF?= =?UTF-8?q?=E7=A8=8B=E6=B1=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index dd7d793..4c326aa 100644 --- a/README.md +++ b/README.md @@ -95,6 +95,7 @@ - [巧用ViewPager 打造不一样的广告轮播切换效果](https://blog.csdn.net/lmj623565791/article/details/51339751) - [为RecyclerView打造通用Adapter 让RecyclerView更加好用](https://blog.csdn.net/lmj623565791/article/details/51118836) - [MNCrashMonitor 监听程序崩溃日志,直接页面展示崩溃日志列表](http://www.wanandroid.com/blog/show/2207) +- [『进阶之路』—— 线程池](http://www.wanandroid.com/blog/show/2264) ### Gradle相关 From ca5abdf6e72eb1fd2d12c0479de6b5f4e25b38a0 Mon Sep 17 00:00:00 2001 From: linsir Date: Mon, 6 Aug 2018 21:20:17 +0800 Subject: [PATCH 23/30] =?UTF-8?q?add=20=E4=BB=8Ejson=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E5=88=B0=E7=82=AB=E9=85=B7=E5=8A=A8=E7=94=BB-Lottie=E5=AE=9E?= =?UTF-8?q?=E7=8E=B0=E6=80=9D=E8=B7=AF=E5=92=8C=E6=BA=90=E7=A0=81=E5=88=86?= =?UTF-8?q?=E6=9E=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 4c326aa..d46bf4d 100644 --- a/README.md +++ b/README.md @@ -96,6 +96,7 @@ - [为RecyclerView打造通用Adapter 让RecyclerView更加好用](https://blog.csdn.net/lmj623565791/article/details/51118836) - [MNCrashMonitor 监听程序崩溃日志,直接页面展示崩溃日志列表](http://www.wanandroid.com/blog/show/2207) - [『进阶之路』—— 线程池](http://www.wanandroid.com/blog/show/2264) +- [从json文件到炫酷动画-Lottie实现思路和源码分析](https://www.jianshu.com/p/81be1bf9600c) ### Gradle相关 From 0f33959c98c68505afe28065bcec0f45a7cb9300 Mon Sep 17 00:00:00 2001 From: linsir Date: Mon, 6 Aug 2018 21:55:57 +0800 Subject: [PATCH 24/30] =?UTF-8?q?dd=20Lottie=E5=8A=A8=E7=94=BB=E5=BA=93=20?= =?UTF-8?q?Android=20=E7=AB=AF=E6=BA=90=E7=A0=81=E6=B5=85=E6=9E=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index d46bf4d..2c1e8d5 100644 --- a/README.md +++ b/README.md @@ -97,6 +97,7 @@ - [MNCrashMonitor 监听程序崩溃日志,直接页面展示崩溃日志列表](http://www.wanandroid.com/blog/show/2207) - [『进阶之路』—— 线程池](http://www.wanandroid.com/blog/show/2264) - [从json文件到炫酷动画-Lottie实现思路和源码分析](https://www.jianshu.com/p/81be1bf9600c) +- [Lottie动画库 Android 端源码浅析](http://chenhaohui.com/2017/03/13/sd/) ### Gradle相关 From ac82bd2a53856e5e9d6c526e68295fa2148b282c Mon Sep 17 00:00:00 2001 From: linsir Date: Sun, 20 Jan 2019 11:54:30 +0800 Subject: [PATCH 25/30] test --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 2c1e8d5..030025f 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Android-Note +# Android-Note2 [![Travis](https://img.shields.io/badge/build-passing-brightgreen.svg)](https://github.com/linsir6) [![License](https://img.shields.io/badge/license-Apache%202-4EB1BA.svg)](https://www.apache.org/licenses/LICENSE-2.0.html) [![GitHub (pre-)release](https://img.shields.io/badge/release-v1.0.3-ff69b4.svg)](https://github.com/linsir6/Android-Notes/releases) [![User](https://img.shields.io/badge/user-linsir-yellow.svg)](https://github.com/linsir6) From 97aab758339491b1af49d8b0ab86664a9341576b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=85=B3=E7=8E=AE=E7=90=B3=40linsir=2Etop?= Date: Sun, 20 Jan 2019 11:54:44 +0800 Subject: [PATCH 26/30] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 2c1e8d5..fd4a2e2 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Android-Note +# Android-Note1 [![Travis](https://img.shields.io/badge/build-passing-brightgreen.svg)](https://github.com/linsir6) [![License](https://img.shields.io/badge/license-Apache%202-4EB1BA.svg)](https://www.apache.org/licenses/LICENSE-2.0.html) [![GitHub (pre-)release](https://img.shields.io/badge/release-v1.0.3-ff69b4.svg)](https://github.com/linsir6/Android-Notes/releases) [![User](https://img.shields.io/badge/user-linsir-yellow.svg)](https://github.com/linsir6) From 1af8dd305c41b839e54361000f1744c6dbdc8a8b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=85=B3=E7=8E=AE=E7=90=B3=40linsir=2Etop?= Date: Sun, 20 Jan 2019 11:58:31 +0800 Subject: [PATCH 27/30] Update README.md --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index fd4a2e2..c6097dc 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ -# Android-Note1 +# Android-Note3 +4 [![Travis](https://img.shields.io/badge/build-passing-brightgreen.svg)](https://github.com/linsir6) [![License](https://img.shields.io/badge/license-Apache%202-4EB1BA.svg)](https://www.apache.org/licenses/LICENSE-2.0.html) [![GitHub (pre-)release](https://img.shields.io/badge/release-v1.0.3-ff69b4.svg)](https://github.com/linsir6/Android-Notes/releases) [![User](https://img.shields.io/badge/user-linsir-yellow.svg)](https://github.com/linsir6) From 2b5b8e99478bd74a488f777ea9dd6afd218e3557 Mon Sep 17 00:00:00 2001 From: linsir Date: Sun, 20 Jan 2019 11:59:12 +0800 Subject: [PATCH 28/30] test2 --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 030025f..f5ad458 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ -# Android-Note2 - +# Android-Note7 +8 [![Travis](https://img.shields.io/badge/build-passing-brightgreen.svg)](https://github.com/linsir6) [![License](https://img.shields.io/badge/license-Apache%202-4EB1BA.svg)](https://www.apache.org/licenses/LICENSE-2.0.html) [![GitHub (pre-)release](https://img.shields.io/badge/release-v1.0.3-ff69b4.svg)](https://github.com/linsir6/Android-Notes/releases) [![User](https://img.shields.io/badge/user-linsir-yellow.svg)](https://github.com/linsir6) From 583ddbdd68ccc6ba5fbb3332f035f542534037e0 Mon Sep 17 00:00:00 2001 From: linsir Date: Sun, 27 Jan 2019 19:20:05 +0800 Subject: [PATCH 29/30] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=B9=8B=E5=89=8D?= =?UTF-8?q?=E7=9A=84=E8=AF=AF=E6=94=B9=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index d98329a..2c1e8d5 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Android-Note7 +# Android-Note [![Travis](https://img.shields.io/badge/build-passing-brightgreen.svg)](https://github.com/linsir6) [![License](https://img.shields.io/badge/license-Apache%202-4EB1BA.svg)](https://www.apache.org/licenses/LICENSE-2.0.html) [![GitHub (pre-)release](https://img.shields.io/badge/release-v1.0.3-ff69b4.svg)](https://github.com/linsir6/Android-Notes/releases) [![User](https://img.shields.io/badge/user-linsir-yellow.svg)](https://github.com/linsir6) From 50e0b973abfc3d4454dd7f84f6cafdf0748be713 Mon Sep 17 00:00:00 2001 From: guanweilin Date: Sat, 4 Mar 2023 17:13:22 +0800 Subject: [PATCH 30/30] delete invalid link --- README.md | 27 +++------------------------ 1 file changed, 3 insertions(+), 24 deletions(-) diff --git a/README.md b/README.md index 2c1e8d5..284538d 100644 --- a/README.md +++ b/README.md @@ -32,22 +32,15 @@ - [RecyclerView的使用](/AndroidNote/Android基础/RecyclerView的简介.md) - [Android获取SHA1](/AndroidNote/Android基础/Android获取SHA1.md) - [Recyclerview和Listview的异同.md](/AndroidNote/Android进阶/Recyclerview和Listview的异同.md) -- [初识ConstraintLayout](https://mp.weixin.qq.com/s?__biz=MzI0MjE3OTYwMg==&mid=2649548068&idx=1&sn=f750ae79c9458f89c3cf85f7573ba579&scene=21#wechat_redirect) - [TabLayout记录](/AndroidNote/Android基础/tablayout记录.md) -- [用SpannableString打造绚丽多彩的文本显示效果](http://www.jianshu.com/p/84067ad289d2) -- [解析ConstraintLayout的性能优势](https://mp.weixin.qq.com/s/gGR2itbY7hh9fo61SxaMQQ) -- [Android新特性介绍,ConstraintLayout完全解析](https://blog.csdn.net/guolin_blog/article/details/53122387) -- [Android新特性介绍,ConstraintLayout完全解析](https://blog.csdn.net/guolin_blog/article/details/53122387) -- [Android 一个无限循环滚动的卡片式ViewPager](https://blog.csdn.net/qq_30552993/article/details/76208535) + ### Android进阶 -- [Android 触控事件解析 - Mastering The Android Touch System 笔记 -](https://www.jianshu.com/p/c65da5e81afd) +- [Android 触控事件解析 - Mastering The Android Touch System 笔记](https://www.jianshu.com/p/c65da5e81afd) - [Android 多进程使用场景](http://blog.csdn.net/qq_27489007/article/details/54377655) - [Android官网建议代码规范](https://source.android.com/source/code-style#java-language-rules) -- [30多年编码经验总结成10条最佳实践](https://mp.weixin.qq.com/s?__biz=MzIyMjQ0MTU0NA==&mid=2247484524&idx=1&sn=5b2759e6d89f01e61d021545ca7556b9&chksm=e82c3d4bdf5bb45dd77227982931ede8229ee6910829253a57bb905e810c89bd3f0a162786e8&mpshare=1&scene=23&srcid=1023FjKcLWtRlcDpwEeeJnCN#rd) - [Android中的动画](/AndroidNote/Android进阶/Android中的动画.md) - [深入了解MVXX模式](/AndroidNote/Android进阶/深入了解MVXX模式.md) - [Android项目总结](/AndroidNote/Android进阶/Android项目总结.md) @@ -59,7 +52,6 @@ - [Handler引起的内存泄漏的案例与分析](/AndroidNote/Android进阶/Handler引起的内存泄漏以及分析.md) - [Android性能优化.md](/AndroidNote/Android进阶/Android性能优化.md) - [LeakCanary的工作过程以及原理](AndroidNote/Android性能优化相关/LeakCanary工作过程以及原理.md) -- [AIDL的具体实现流程](http://bbs.51cto.com/thread-1086040-1.html) - [Android中利用异步来优化处理速度](https://mp.weixin.qq.com/s?__biz=MzI0MjE3OTYwMg==&mid=401555104&idx=1&sn=501e6158e6eb26b4e86467be01fd290e&scene=21#wechat_redirect) - [为什么选择Binder实现Android中跨进程通信](https://mp.weixin.qq.com/s?__biz=MzI0MjE3OTYwMg==&mid=2649548116&idx=1&sn=d11a131871623110c74e3676d4fcf785&chksm=f1180e29c66f873f9cac5dc104f97fae319c1831219a9fd9458a4429f16562f6712cc7f65a4c&scene=21#wechat_redirect) - [三大图片缓存框架的对比](https://mp.weixin.qq.com/s?__biz=MzI0MjE3OTYwMg==&mid=2649547344&idx=2&sn=e3fa99b52055a37202634fe61a62d439&scene=21#wechat_redirect) @@ -76,7 +68,6 @@ - [Android基础入门教程——8.1.1 Android中的13种Drawable小结 Part 1](http://blog.csdn.net/coder_pig/article/details/49006217) - [Android基础入门教程——8.1.2 Android中的13种Drawable小结 Part 2](http://blog.csdn.net/coder_pig/article/details/49008397) - [Android-Drawable高级用法](http://blog.csdn.net/lmj623565791/article/details/43752383) -- [安卓开踩过的坑:你的 Bitmap 究竟占多大内存?](http://dev.qq.com/topic/591d61f56793d26660901b4e) - [Android 4.4 中 WebView 使用注意事项](https://github.com/cundong/blog/blob/master/Android%204.4%20%E4%B8%AD%20WebView%20%E4%BD%BF%E7%94%A8%E6%B3%A8%E6%84%8F%E4%BA%8B%E9%A1%B9.md) - [Android图像处理 - 高斯模糊的原理及实现](https://mp.weixin.qq.com/s?__biz=MzI2MTU3MTE4NQ==&mid=2247483896&idx=1&sn=50c61e2c78aa610a1944be6a89bd75e5&chksm=ea5916e6dd2e9ff0a62af64c7f345ffb5c6dafdb65847b757b99afcc6fed8e1270e915dbcb25&mpshare=1&scene=23&srcid=1001DxwdQpiMwea74mczpSw8#rd) - [Android实战——GreenDao3.2的使用,爱不释手](https://mp.weixin.qq.com/s/4Nx2DacsK65O5LanPZUszA) @@ -90,27 +81,21 @@ - [Android混合编程:WebView实践](https://juejin.im/post/59f17a7051882546d71e91a7) - [runOnUiThread 、Handler.post、View.post之间的区别](https://blog.csdn.net/dengpeng_/article/details/78804404) - [理解 Activity.runOnUiThread](https://www.jianshu.com/p/e39449026f21) -- [说说 getMainLooper](http://www.icodeyou.com/2015/10/11/2015-10-11-getMainLooper/) - [Android 探究 LayoutInflater setFactory](https://blog.csdn.net/lmj623565791/article/details/51503977) - [巧用ViewPager 打造不一样的广告轮播切换效果](https://blog.csdn.net/lmj623565791/article/details/51339751) - [为RecyclerView打造通用Adapter 让RecyclerView更加好用](https://blog.csdn.net/lmj623565791/article/details/51118836) - [MNCrashMonitor 监听程序崩溃日志,直接页面展示崩溃日志列表](http://www.wanandroid.com/blog/show/2207) - [『进阶之路』—— 线程池](http://www.wanandroid.com/blog/show/2264) - [从json文件到炫酷动画-Lottie实现思路和源码分析](https://www.jianshu.com/p/81be1bf9600c) -- [Lottie动画库 Android 端源码浅析](http://chenhaohui.com/2017/03/13/sd/) ### Gradle相关 - [如何理解 Transform API](https://juejin.im/entry/59776f2bf265da6c4741db2b) -- [Gradle自定义插件详解](https://www.jianshu.com/p/03eb55536298) -- [Android 突破 DEX 文件的 64k方法数限制](http://yifeng.studio/2016/10/26/android-64k-methods-count/) - [Android Dex分包之旅](http://yydcdut.com/2016/03/20/split-dex/) -- [美团Android DEX自动拆包及动态加载简介](https://tech.meituan.com/mt-android-auto-split-dex.html) - [gradle简单入门系列](http://www.cnblogs.com/davenkin/p/gradle-learning-1.html) - [Gradle简单配置](https://mp.weixin.qq.com/s/1UHcYOudViMhpUYeREZzGA) - [Android 如何编写基于编译时注解的项目](https://blog.csdn.net/lmj623565791/article/details/51931859) -- [Gradle 完整指南(Android)](https://www.jianshu.com/p/9df3c3b6067a) ### 插件化相关 @@ -160,20 +145,14 @@ ### 面试题 - - [**Java面试相关**](https://github.com/linsir6/JavaNote) - - [Android动态加载技术三个关键问题详解](https://blog.tingyun.com/web/article/detail/166) - [Android组件化方案](http://blog.csdn.net/guiying712/article/details/55213884) -- [Android插件化系列第(一)篇---Hook技术之Activity的启动过程拦截](https://www.jianshu.com/p/69bfbda302df) - [Android插件化系列第(二)篇---动态加载技术之apk换肤](https://www.jianshu.com/p/d1c6e67f7889) - [Android插件化系列第(三)篇---Hook技术之View点击劫持](https://www.jianshu.com/p/dfc6e3989511) - [Android性能优化之布局优化](https://www.cnblogs.com/hoolay/p/6248514.html) - [简易断点续传下载器实现](https://www.jianshu.com/p/5b2e22c42467) - [超详细面试基础题](https://mp.weixin.qq.com/s/YVvV3-RUjbqYo-DYY3E6nA) - [JVM结构、GC工作机制详解](http://blog.csdn.net/tonytfjing/article/details/44278233) -- [深入理解Activity的生命周期](https://www.jianshu.com/p/fb44584daee3) -- [2017-Android暑期实习生面试经验谈](http://lruheng.com/2017/05/09/2017-Android%E6%9A%91%E6%9C%9F%E5%AE%9E%E4%B9%A0%E7%94%9F%E9%9D%A2%E8%AF%95%E7%BB%8F%E9%AA%8C%E8%B0%88/) - [深入探讨类加载器](https://www.ibm.com/developerworks/cn/java/j-lo-classloader/) - [找到无序数组中最小的K个数](https://www.cnblogs.com/xiaomoxian/archive/2016/02/11/5186762.html) - [字符编码笔记:ASCII,Unicode和UTF-8](http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html) @@ -301,7 +280,7 @@ - [Spring Boot 配置文件 – 在坑中实践](https://www.bysocket.com/?p=1786) - [Spring Boot 之 RESRful API 权限控制](https://www.bysocket.com/?p=1080) - [Spring Boot 整合 Redis 实现缓存操作](https://www.bysocket.com/?p=1756) -- [Spring Boot 官方文档](https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/  ) +- [Spring Boot 官方文档](https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/) ----