Android Weekly #216 安卓开发周刊 中文版

OPEN编辑 3年前
   <h2><strong>文章&教程</strong></h2>    <p><a href="/misc/goto?guid=4959675814443159444">提高Android开发人员生产力的最佳实践 </a>(medium.com)</p>    <p>Sergii Zhuk分享了他的团队所使用的提高Android开发人员生产力的一些最佳实践。</p>    <p><a href="/misc/goto?guid=4959675814520254176">你的App知道吗?-第2部分</a>(www.andevcon.com)</p>    <p>Roberto Orgiu继续了本系列文章,这次他关注了新的Awareness APIs的基于轮询的快照版本。</p>    <p><a href="/misc/goto?guid=4959675814606017147">ConstraintLayout,从里到外:第2部分 </a>(wiresareobsolete.com)</p>    <p>Dave Smith从内部编码组织着手,深入探讨了新型ConstraintLayout灵活性的机制。</p>    <p><a href="/misc/goto?guid=4959675814691673015">你好RxJava</a>(medium.com)</p>    <p>Sameer Dhakal分享了另一篇深入介绍RxJava的文章。</p>    <p><a href="/misc/goto?guid=4959675814768728894">Android从零开始:后台运作 </a>(code.tutsplus.com)</p>    <p>为了避免各种应用程序无响应(ANRs),你必须将较长的运行操作,例如网络请求或者缓慢的数据库查询,移到一个不同的线程中去,从而使用户可以继续使用你的App。Paul Trebilcox-Ruiz教你如何去做。</p>    <p><a href="/misc/goto?guid=4959675814840373244">Kotlin & Dagger 2 (依赖注入) – 第10部分</a>(www.andevcon.com)</p>    <p>在本系列文章中的最后一篇中,Juan Saravia讲了有关Kotlin中Dagger 2的一些内容及其在Keddit示例App中运行的必要步骤。</p>    <p><a href="/misc/goto?guid=4959675814925411265">Android数据绑定:大事件 </a>(medium.com)</p>    <p>Android数据绑定提供了3种机制可以在布局文件中设置一个事件监听器,你可以选取最适合你的那一个。</p>    <p><a href="/misc/goto?guid=4959675815038330037">在使用各种自定义Parcelable时要小心 </a>(commonsware.com)</p>    <p>自定义Parcelable类——你的App所特有的,而不是Android框架的一部分——几年来在被用作Intent Extras时一直问题不断。</p>    <p><a href="/misc/goto?guid=4959675815121335585">向我们展示你的Gradle Tasks </a>(www.reddit.com)</p>    <p>这里是一系列对Android开发者有用的Gradle Tasks。</p>    <p><a href="/misc/goto?guid=4959675815204211388">AnimatedVectorDrawable Bundles </a>(blog.stylingandroid.com)</p>    <p>Mark Allison展示了一种在源水平上打包AnimatedVectorDrawable的另一种方法。本文中他介绍了AnimatedVectorDrawable Bundles。</p>    <p><a href="/misc/goto?guid=4959675815289820560">Android测试介绍-第3部分 </a>(riggaroo.co.za)</p>    <p>在第3部分文章中,Rebecca Franks论述了如何从Github API获取用户列表并为其书写了单元测试。</p>    <h2><strong>设计</strong></h2>    <p><a href="/misc/goto?guid=4959675815367774420">重新审视手机下拉菜单</a>(medium.com)</p>    <p>为了更好的理解下拉菜单及其替代品是如何影响用户所花费的时间的,Klaus Schaefers进行了一些UX实验。</p>    <h2><strong>库&代码</strong></h2>    <p><a href="/misc/goto?guid=4959675815454867095">SlyceMessaging </a>(github.com)</p>    <p>一个可定制的Android信息传递库。</p>    <p><a href="/misc/goto?guid=4959675815538063726">findbugs-android </a>(github.com)</p>    <p>一种Gradle插件,它能够为每一个不同的Android应用或者库项目创建FindBugs任务。</p>    <p><a href="/misc/goto?guid=4959675815630743609">overpasser </a>(github.com)</p>    <p>通过Overpass API查询OpenStreetMap数据的Fluid Java接口。不再需要手工打造查询字符串了!</p>    <p><a href="/misc/goto?guid=4959675815708607013">ReactiveCache </a>(github.com)</p>    <p>ReactiveCache对缓存数据的操作只是在可观测链(Observable chain)中的另一种转换。ReactiveCache的API即是转换器又是可观测RxJava类型,它将缓存操作同数据流巧妙地融合在一起。</p>    <p><a href="/misc/goto?guid=4959675815789621726">auto-value-map </a>(github.com)</p>    <p>AutoValue Extension增加了Map生成支持。生成一个Map,关键词是字段名,值是相关的字段值。</p>    <h2><strong>视频&播客</strong></h2>    <p><a href="https://www.油Tube.com/watch?v=H-9xKmuwawg&feature=youtu.be">Data Saver </a>(www.油Tube.com)</p>    <p>利用添加到ConnectivityManager中的一个新API,你能够检查Data Saver的当前状态并且调整你的Apps的数据使用。</p>    <p><a href="/misc/goto?guid=4959675815957589399">在通往干净框架的途中</a>(www.油Tube.com)</p>    <p>Dmytro Voronkevych所讲的是关于一个拥有过亿次安装的Android应用的故事,每天有数百万人使用它,利润丰厚。其开始于遗留代码,然后发展并转换为干净框架。</p>    <p><a href="https://www.油Tube.com/watch?v=kgJvkkr2Iuk&feature=youtu.be">逆向工程(Reverse Engineering)并非仅仅用于黑客 </a>(www.油Tube.com)</p>    <p>Jon Reeve在这段谈话中呈现了一个简单的现实例子,它使用一些不断完善的成套Android逆向工程工具,并获得了最大的实际效益。</p>    <p> </p>    <p>英文原文:<a href="/misc/goto?guid=4959556352806425870">Android Weekly #216</a></p>    <p>中文翻译:<a href="http://www.open-open.com/lib/view/open1470024044978.html">http://www.open-open.com/lib/view/open1470024044978.html</a></p>    <p>译者:青岛海边 校对:OPEN编辑</p>    <p>本译文仅用于学习和交流,转载请注明文章译者、出处、和本文链接</p>    <p>我们遵照 CC 协议,如有侵犯到您的权益,请联系我们</p>