🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
### 新闻 1. [谷歌最新操作系统Android N逐步实现对VR的支持](http://www.vrsat.com/news/8142.html) 2. [Android N 开发者预览版 2 发布](http://chinagdg.org/2016/04/android-n-developer-preview-2/) 3. [Google 表示可能会将 Swift 作为 Android 开发的首选语言](http://thenextweb.com/dd/2016/04/07/google-facebook-uber-swift/?%2BSandbox) ### 教程 1. [FB App 优化工具 ReDex 优化的 6 点及未优化的 1 点](http://t.cn/RqoA7nB) ReDex 是 Facebook 开源的工具,通过对字节码进行优化,以减小 Android Apk 大小,同时提高 App 启动速度。去年十月 Facebook 就写过一篇文章《Optimizing Android bytecode with ReDex》对其进行介绍,终于在上周 ReDex 开源了。 2. [Android视图架构详解](http://blog.csdn.net/u012422440/article/details/51173387)(By ztelur) 总所周知,Activity并不负责视图控制,它只是控制生命周期和处理事件,真正控制视图的是Window。一个Activity包含了一个Window,Window才是真正代表一个窗口,也就是说Activity可以没有Window,那就相当于是Service了。在ActivityThread中也有控制Service的相关函数或许正好印证了这一点。 Activity和Window的第一次邂逅是在ActivityThread调用Activity的attach()函数时。 3. [Android丨单元测试: 首先,从是什么开始](http://t.cn/Rq6SlMh) 首先需要介绍一下什么是单元测试。很多人像我一样,本科并不是计算机专业出身的,如果在职的公司不要求做单元测试的话,可能对这个词并没有一个确切的概念。而即使是计算机专业出身,如果毕业以后写的不多的话,可能对这个词的含义也不是很清楚。从名字上看,单元测试是为了测试某一个代码单元而写的测试代码。 4. [聊聊Android中的MVX实践](http://t.cn/Rq6P29X) MVC 没有列入23种经典的设计模式之中,why?MVC被视为一种复合模式,包含以下:1.观察者模式——M变化,通知观察者(V)改变; 2.策略模式——对于M,C以不同的策略进行处理;3.组合模式——V通常是由多层子View的组合。MVC被视为一种框架模式,从复用角度来说:1.MVC是宏观层面设计分工的复用;2.设计模式是具体问题解决思路的复用。MVP、MVVM被视为MVC框架模式的改进版本,这三者放在一起,我们戏称为MV“X”。 5. [Android官方MVP架构示例项目解析](http://t.cn/RqxuY2L) App架构在Android开发者中一直是讨论比较多的一个话题,目前讨论较多的有MVP、MVVM、Clean这三种。google官方对于架构的态度一直是非常开放的,让开发者自主选择组织和架构app的方式,期望能留给开发者更多的灵活性。 6. [Android持续集成以及测试覆盖率可视化](http://sixwolf.net/blog/2016/04/12/Android%E4%BD%BF%E7%94%A8Travis-CI%E6%8C%81%E7%BB%AD%E9%9B%86%E6%88%90%E4%BB%A5%E5%8F%8A%E6%B5%8B%E8%AF%95%E8%A6%86%E7%9B%96%E7%8E%87%E5%8F%AF%E8%A7%86%E5%8C%96/)  Travis-CI是一款持续集成工具,对开源项目免费。免除了Jenkins搭建服务器的工作。用户只要完成以下简单的几步就能接入Travis:1.通过Github账号登录[https://travis-ci.org/。2.在项目根目录加.travis.yml](https://travis-ci.org/%E3%80%822.%E5%9C%A8%E9%A1%B9%E7%9B%AE%E6%A0%B9%E7%9B%AE%E5%BD%95%E5%8A%A0.travis.yml) 文件。3.git add -> commit -> push.之后再每次push之后Travis-CI就会根据.travis.yml对项目进行build。然后就可以在Travis网站控制台上查看build的情况。在build完成之后Travis也会通过邮件的方式通知你。 7. [React-Native 的优化进阶之旅](http://t.cn/Rqxukx7) 虽然,ReactNative调用的是原生的UI,但是经过了React的一层使用机制的封装处理,我们常常会在开发过程中发现界面交互卡顿,刷新效率不高,原生UI的API没有对外开放等问题,其实,很多时候是我们没有深入的去理解ReactNative的机制,人为的降低了产品的交互体验。那么,下面我们就开始我们的优化进阶之旅吧! 8. [Airbnb:我们的安卓客户端是如何使用 RxJava 的](https://realm.io/cn/news/kau-felipe-lima-adopting-rxjava-airbnb-android/) Reactive 编程和 RxJava 是最近常常引起强烈争论的话题,争论过程中问题很多,不确定性也很多。本次演讲我们会讨论,在 Airbnb 的客户端里,我们是如何采纳这些范式和技术,包括动力,实现的困难,和这一路走来的经验教训。我们还会看些产品的代码,比较 imperative 编程和 reactive 编程的优劣,然后分别讨论它们的优势和缺陷。 9. [React-Native痛点解析之开发环境搭建及扩展](http://www.infoq.com/cn/articles/react-native-solution-dev-environment) React Native的出现,为APP开发者们带来了冲动和激情,令Native开发者和Web开发者都为之痴迷。瞬间各类技术论坛、技术社区甚至出版社都争先报道其相关内容。然而对于一般的初学者来说,最简单要求莫过于按照官方提供的向导来完成基于React Native的处女之作。 10. [携程移动App架构优化之旅](http://www.infoq.com/cn/articles/ctrip-app-architecture) 『携程旅行App』作为携程超级App产品,是公司全品类旅行产品的核心售卖入口,过去两年为了更好支撑无线业务的快速发展,携程移动App在产品和技术架构方面也做了大量的优化。产品方面,携程App从原先的iPhone、iPad、Android Phone、Android Pad和Windows Phone共五个版本精简为Universial iOS和Universial Android两个版本,以便于集中研发和市场资源发布新产品。 ### 开源库&项目 1. [android-open-source-project-cracking](https://github.com/wingjay/android-open-source-project-cracking) Android 优质开源项目剖析与技术进阶 2. [LoadingDrawable](https://github.com/dinuscxj/LoadingDrawable) 几个 Loading 动画效果 3. [SpringFloatingActionMenu](https://github.com/tiancaiCC/SpringFloatingActionMenu) 点击 FAB 会弹出菜单,并有动画效果的库 4. [OpenGraphView](https://github.com/kaelaela/OpenGraphView) Rich url link view for Android 5. [CompactCalendarView](https://github.com/SundeepK/CompactCalendarView) 遵循 Materila Design 的 CalendarView 兼容实现 6. [folding-cell-android](https://github.com/Ramotion/folding-cell-android) FoldingCell is an expanding content cell inspired by folding paper materia 7. [spark](https://github.com/robinhoodmarkets/spark) 自定义走势图图表 View 8. [auto-droid](https://github.com/xizzhu/auto-droid) AutoValue Extension for Android 9. [Lattekit](https://github.com/maannajjar/lattekit) 一个灵感来自 React.js, 可以让你在 Kotlin 项目种快速创建 UI 的框架 ### 工具 1. [redex](https://github.com/facebook/redex) Facebook 开源对字节码进行优化的工具 2. [parrot](https://github.com/carlospaulino/parrot) 一个可以自动将 Android 项目中的所有 string 资源翻译成其他其他语言的 Gradle 插件 > 版权声明:欢迎自由转载-非商用-非衍生-保持署名 | [Creative Commons BY-NC-ND 3.0](http://creativecommons.org/licenses/by-nc-nd/3.0/deed.zh39)