Android开发技术周报 Issue#78
新闻
教程
-
这是Android性能优化典范第5季的课程学习笔记,拖拖拉拉很久,记录分享给大家,请多多包涵、担待指正!文章共有10个段落,涉及的内容有:多线程并发的性能问题,介绍了AsyncTask、HandlerThread、IntentService与ThreadPool分别适合的使用场景以及各自的使用注意事项。这是一篇了解Android多线程编程不可多得的基础文章,清楚地了解这些Android系统提供的多线程基础组件之间的差异以及优缺点,才能够在项目实战中做出最恰当的选择。
-
Android分包(MultiDex)后编译加速方案 (by 彼时芒种)
应用了分包(MultiDex)之后Android Studio的编译时间达到了历史新高,随便更改一处代码,重新编译运行都需要1min~2min,严重的时候甚至达到3min。这简直就是在浪费程序员的生命啊!在笔者写下这篇文章的时候google已经推出了Android Studio 2.1.0 及gradle 2.1.0 稳定版。
-
React Native 的一大优势是:可以只用一种语法编写分别运行在 iOS 和 Android 平台上的程序,且可重用部分应用逻辑。然而,与“一次编写,到处运行”的理念不同的是,React Native 的哲学是“一次学习,到处编写”。如此一来,即使用 React Native 编写不同平台的程序,也可以尽可能贴合每个平台的特性。
-
2016年4月15日,在Android新版本N发布的前夕,Google在北京组织了开发者大会,几位主讲人均来自美国的Google Android Team,会议除了介绍Android N的几个重大更新以外,另一个重要目的是倾听中国区开发者的声音,并对在Android N Preview版中大家遇到的问题进行答疑,他们回到美国之后会针对这些问题在Framework层做出相应改进。
-
SearchView是一个搜索框控件,样式也挺好看的。这次解析主要围绕android.support.v7.widget包下的SearchView(API >= 7),android.widget.SearchView支持API >= 11, 另外有个android.support.v4.widget.SearchViewCompat。
-
Android drawable微技巧,你所不知道的drawable的那些细节
大家都知道,在Android项目当中,drawable文件夹都是用来放置图片资源的,不管是jpg、png、还是9.png,都可以放在这里。除此之外,还有像selector这样的xml文件也是可以放在drawable文件夹下面的。
-
实战Kotlin@Android(三) (by 程大治)
在前面的两篇文章中,我们探索了如何使用Kotlin来进行部分实用Android开发工作。如果你还没有看前面两篇,请进入传送门第一部分/第二部分。到现在,我们已经可以使用比XML更少的代码完成View的构建,更别说Java了。Kotlin的语法为声明式,View之间的嵌套也十分清晰,而且我们还可以给类很方便地添加实用方法。
-
随着谷歌对Eclipse的无情抛弃和对Android Studio的日趋完善,使用gradle构建Android项目已经成为开发者的一项必会良技。那么,问题来了,采用什么样的姿势才能让项目开发构建过程高潮迭起,精彩不断呢?
-
要说为什么要写单元测试的话,我相信大部分人都能承认、也能理解单元测试在保证代码质量,防止bug或尽早发现bug这方面的作用,这可能是大家觉得单元测试最大的作用。然而我觉得,除了这方面的作用,单元测试还能在很大程度上改善代码的设计,同时还能节约时间,让人工作起来更自信、更开心,以及其他的一些好处。这些都是我的切身感受,我相信也是多数真正实践过单元测试的人的切身感受,而不是为了宣传这个东西而说的好听的大话。
-
每年,作为 F8 会议的一部分,Facebook 都会开发一款会议相关的 iOS 和 Android 的 app,让参会者可以通过 app 安排会议行程,了解更多关于演讲和演讲者的信息。这个 app 还提醒参会者即将开始的演讲,或者发送一些临时公告。今年,我们不仅在 GitHub 上开源了代码,我们还制作了一系列的教程。想用简单明了的语言介绍 React Native 及其开源生态。
-
Android Scroll详解(三):Android 绘制过程详解 (by ztelur)
本篇为Android Scroll系列文章的最后一篇,主要讲解Android视图绘制机制,由于本系列文章内容都是视图滚动相关的,所以,本篇从视图内容滚动的视角来梳理视图绘制过程。
-
ReactNative For Android】框架启动核心路径剖析
前面给大家分析过 ReactNative For Android (RN4A) 的通信机制,这次我们从源码出发,分析下RN4A的启动过程。启动过程基于通信机制,涉及通信机制原理大家可以查看前一篇文章,本篇不赘述。上面是2016 React.js Conf FB 工程师分享的RN启动时序图,整个过程比较清晰,先启动终端运行时,随后由终端上下文去启动JS的运行时,进而布局,最后再由终端进行渲染,最后将View添加到RootView上。那接下来,我们先理解几个概念,方便后续我们对整个启动过程的理解。
-
最近有个梗在程序员间流传甚广,那就是“从入门到放弃”系列,甚至IT界的小网红Easy还为它出了周边。在这次GMTC全球移动技术大会上,我们很荣幸的邀请到了《App研发录》的作者包建强前来分享,他给我们提交的议题就叫做《Android插件化:从入门到放弃》,而且还特别声明不要换。我们发布出来后,也有一些同学奇怪为什么起这个标题,内容是什么。
-
今天的话题比较敏感,关于 Android 进程如何保活。一方面非常之多的 Android 应用有这方面的需求并实际应用,另一方面很多应用在保活这条道上一路走到黑,罔顾对能耗与用户体验的影响,也是造成 Android 平台被用户诟病的原因之一,因此一开始收到这篇投稿,是否推送给大家也是有犹豫。
-
反射、注解与依赖注入总结 (by 孙福生)
现在在我们构建自己或公司的项目中,或多或少都会依赖几个流行比较屌的第三方库,比如:Butter Knife、Retrofit、Dagger 2等,如果你没用过,那你需要找时间补一下啦;有时在使用后我们会好奇他们到底是怎么做到这种简洁、高效、松耦合等诸多优点的,当然这里我不探讨它们具体怎么实现的,而关心的是它们都用到同样的技术反射和注解,并实现的依赖注入。
开源库&项目
-
Google 开源的一个可以帮助你在 Android 上写函数式、异步和响应式代码的库
-
仿 Tinder 卡片左右滑动消失效果的 Dialog
-
一个适用于 RecyclerView 的可以从 Gayhub 上获取 开源库 License 信息的 Adapter
-
Gif 图片 Loading View
-
一个支持图文混排的 TextView
-
A library gives depth to Views. It also contains some examples of Canvas drawing techniques to create particle systems, waves and grain effect
-
一个适用于 Android 平台的音视频播放器 SDK,可高度定制化和二次开发
-
一个专用于解决Android中网络请求及图片加载的缓存处理框架
-
A toolbar that morphs from a FloatingActionButton
-
一个可以显示室内地图的自定义地图控件
-
图片选择裁切库
-
Gradle Plugin Android Aspectjx
一个在Android中应用Aspectj的Gradle插件。支持切AAR, JAR, 支持现在Android上最火的Kotlin。
-
一个可以让你快速创建出很赞的关于界面的库
-
有趣的曲线在Android上的实现
-
Android SDK 源码解析
-
A tiny Android library makes very easier ProgressBar anitmation horizontal.
-
Android 性能度量库
-
A material-style pager indicator for Android
-
带有阻尼效果(橡皮筋效果)跳动的Loading动画
-
模仿readme.io登陆页面的动画效果
-
功能强大的StickyHeaderListView:标题渐变、吸附悬停、筛选分类、动态头部等
工具
-
一个 Java 代码静态分析工具
-
Control, monitor, and instrument your React and React Native apps from the comfort of your TTY.
-
APK patch size estimator
Estimates the size of a Google Play patch and the new gzipped APK.