💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
### 教程 1. [深入浅出 RecyclerView](http://kymjs.com/code/2016/07/10/01) 这篇文章分三个部分,简单跟大家讲一下 RecyclerView 的常用方法与奇葩用法;工作原理与ListView比较;源码解析; 2. [从零开始的Android新项目7 - Data Binding入门篇](http://t.cn/R5eVeD1) Data Binding自从去年的Google I/O发布到至今,也有近一年的时间了。这一年来,从Beta到如今比较完善的版本,从Android Studio 1.3到如今2.1.2的支持,可以说Data Binding已经是一个可用度较高,也能带来实际生产力提升的技术了。然而事实上,真正使用到Data Binding的公司、项目仍然是比较少的。可能是出于稳定性考虑,亦或是对Data Binding技术本身不够熟悉,又或许对新技术没什么追求。 3. [【React Native for Android】jsBridge实现原理](http://blog.desmondyao.com/2016/07/02/rn-bridge/) React Native for Android(RN4A)的核心流程在QZone的框架启动核心路径剖析一文中讲述得很详细,本文不再赘述,主要解析RN4A里面的Native&JS通信机制。 4. [Google I/O 2016 笔记:APK 瘦身的正确姿势](https://zhuanlan.zhihu.com/p/21543787) 业务逻辑不断累积、引入的第三方 SDK 不断增加以及图片资源不变变大,APK 瘦身已经是每个 Android 应用开发者不得不考虑的问题了(iOS 应用也有瘦身的问题,但相比之下 Android 应用的瘦身压力大得多)。坊间流传的各种瘦身方法有些切实可行,有的却流毒甚广。不妨结合这届 I/O 的两个相关 topic 来学习下 APK 瘦身的正确姿势。 5. [理解Android Crash处理流程](http://gityuan.com/2016/06/24/app-crash/) App crash(全称Application crash), 对于Crash可分为native crash和framework crash(包含app crash在内),对于crash相信很多app开发者都会遇到,那么上层什么时候会出现crash呢,系统又是如何处理crash的呢。例如,在app大家经常使用try...catch语句,那么如果没有有效catch exception,就是导致应用crash,发生没有catch exception,系统便会来进行捕获,并进入crash流程。 6. [Android Vector曲折的兼容之路](http://www.jianshu.com/p/e3614e7abc03) Android 5.0发布的时候,Google提供了Vector的支持。Vector Drawable相对于普通的Drawable来说,有以下几个好处:Vector图像可以自动进行适配,不需要通过分辨率来设置不同的图片;Vector图像可以大幅减少图像的体积,同样一张图,用Vector来实现,可能只有PNG的几十分之一;使用简单,很多设计工具,都可以直接导出SVG图像,从而转换成Vector图像 7. [Android内存申请分析](http://t.cn/R5uBo45) 最近一直在做有关内存方面的优化工作,在做优化的过程,除了关注内存的申请量以及GC的情况之外,我们经常需要想方法找出是那些对象占用了大量内存,以及他们是如何导致GC的,这意味着我们需要获取对象申请的信息(大小,类型,堆栈等),我们这篇文章来介绍下几种获取对象申请信息的方法 8. [深度理解Android InstantRun原理以及源码分析](http://www.jianshu.com/p/780eb85260b3) 简单介绍一下Instant Run,它是Android Studio2.0以后新增的一个运行机制,能够显著减少你第二次及以后的构建和部署时间。简单通俗的解释就是,当你在Android Studio中改了你的代码,Instant Run可以很快的让你看到你修改的效果。而在没有Instant Run之前,你的一个小小的修改,都肯能需要几十秒甚至更长的等待才能看到修改后的效果。 9. [解决首次启动程序白屏时间过长的问题](http://t.cn/R5efPYi) 关于首次启动程序白屏时间过长这个问题其实我也早就发现了,而且正如评论中所说,有的时候白屏时间可以长达七八秒。看来这个问题已经是一个普遍存在的现象了,可能很多人对此都产生了疑惑。那么这里我就专门写一篇文章来为大家答疑解惑吧。另外,本篇文章也向大家展示了一个分析和解决问题的思路,希望大家以后遇到问题可以通过多思考和多动手实验来去尝试解决问题,而不是直接绕过问题。 ### 开源库&项目 1. [VirtualApp](https://github.com/asLody/VirtualApp) 一个App虚拟引擎的开源实现,类似LBE平行空间 2. [highlightjs-android](https://github.com/PDDStudio/highlightjs-android) A view for source code syntax highlighting on Android 3. [Pulsator4Droid](https://github.com/booncol/Pulsator4Droid) Pulse animation for Android 4. [FocusResize](https://github.com/borjabravo10/FocusResize) A custom animation with scroll listener to recycler views 5. [SparkButton](https://github.com/varunest/SparkButton) Twitter 点赞效果实现 6. [ShineButton](https://github.com/ChadCSong/ShineButton) This is a UI lib for Android. Effects like shining. 7. [MoneyTextView](https://github.com/fabiomsr/MoneyTextView) 可以显示各种格式的金钱数字的自定义View 8. [CalendarView](https://github.com/henry-newbie/CalendarView) 一个高度定制的日期选择器,可以满足多选日期的需求 ### 工具 1. [android-arscblamer](https://github.com/google/android-arscblamer) Android 应用的 resources.arsc 文件解析工具 2. [Android 9-Patch Shadow Generator](http://inloop.github.io/shadow4android/) Android 9-patch shadow generator fully customizable shadows ### 技术之外 1. [国内Top500Android应用分析报告](http://t.cn/R5ebJBL) 2. [我如何用三个月入门日语](http://numbbbbb.com/2016/07/04/20160704_%E6%88%91%E5%A6%82%E4%BD%95%E7%94%A8%E4%B8%89%E4%B8%AA%E6%9C%88%E5%85%A5%E9%97%A8%E6%97%A5%E8%AF%AD/) ### 版权声明 > 欢迎自由转载-非商用-非衍生-保持署名 | [Creative Commons BY-NC-ND 4.0](https://creativecommons.org/licenses/by-nc-nd/4.0/) ### 捐赠 > 如果你觉得Android开发技术周报对您有所帮助,请考虑对本周报捐赠支持。支持我把Android开发技术周报做的更好,帮助更多的人,金额随意,您的捐赠将用于支付服务器和邮件推送服务的费用。[去捐赠](http://www.androidweekly.cn/donate/)