新闻
教程
-
统计App冷启动时间。这个任务看上去不难,但是要求统计出来的时间要准,要特别准。意思就是,我必须要按Activity绘制到屏幕上这个时间节点作为标杆,来进行我的统计工作。毕竟如果是因为视图处理不当而导致的measure/layout/draw耗时太久,这是不能忍的,需要及时统计到。虽然有点蛋疼,但是这个任务还算有意义,我就深挖一下,把过程分享出来。
-
模拟自然动画的精髓——TimeInterpolator与TypeEvaluator
通过属性动画,我们可以模拟各种属性的动画效果,但对于这些属性来说,动画变化的速率和范围,是实现一个更加『真实、自然』的动画的基础,这两件事情,就是通过TimeInterpolator与TypeEvaluator来实现的。TimeInterpolator与TypeEvaluator共同作用在ValueAnimator上,通过复合的方式产生最后的数据,这也就是数学上的『复合函数』,TimeInterpolator控制在何时取值,而TypeEvaluator控制在当前时间点需要取多少值。由于这里涉及到两个变量,所以,这里我们通常使用『控制变量法』来进行这两个属性的研究,因为通常情况下,这两个属性的作用效果是殊途同归的。
-
之前讲解了很多与View绘图相关的知识,你可以在 安卓自定义View教程目录 中查看到这些文章,如果你理解了这些文章,那么至少2D绘图部分不是难题了,大部分的需求都能满足,但是关于View还有很多知识点,例如: 让绘图更加炫酷的Paint,让View动起来的动画,与用户交互的触控事件 等一系列内容。本次就带大家简单的了解一下与交互息息相关的东西-事件分发原理。
-
Android7.0发布已经有一个多月了,Android7.0在给用户带来一些新的特性的同时,也给开发者带来了新的挑战,这几天我将应用适配到Android7.0,其中也遇到了不少问题也踩了一些坑,在这里就把我在Android7.0适配上的一些心得分享给大家,让大家的应用能早一天跑在Android7.0上。
-
在之前的开发经历中经常需要导入一些如v4、v7、v13等Android官方的支持包,遇到这些情况时都是网上搜索一下,按照前人给的示例添加依赖。这么稀里糊涂的使用后代码正常运行了,但不免会对Android官方提供的支持包产生了一些疑问。如,Android官方为什么要提供支持包,都提供哪些支持包,这些支持包又提供了什么特性,开发者又应该如何选择使用这些支持包?
-
G1 GC,全称Garbage-First Garbage Collector,通过-XX:+UseG1GC参数来启用,作为体验版随着JDK 6u14版本面世,在JDK 7u4版本发行时被正式推出,相信熟悉JVM的同学们都不会对它感到陌生。在JDK 9中,G1被提议设置为默认垃圾收集器(JEP 248)。
开源库&项目
-
Android平台下的原生Markdown解析器
-
Diagonal cut view
-
A quick settings tile to quickly set the animator duration scale.
-
This library help you to achieve popular drop shadow effect from view
-
Java and Android class communication library: New and improved Pub-Sub
-
一个加载界面,可以自定义颜色,可以改变转动的速度或者通过注册监听器的方式去控制这个界面,适合于播放视频的界面中。(比如加载或者缓存视频时引入此界面)
-
Qiscus SDK is a lightweight and powerful android chat library. Qiscus SDK will allow you to easily integrating Qiscus engine with your apps to make cool chatting application.
-
Android library for measuring time between multiple independent events.
-
A wrapper for android recyclerview
-
AutoLinkTextView is TextView that supports Hashtags (#), Mentions (@) , URLs (http://), Phone and Email automatically detecting and ability to handle clicks.
-
一款能够显示阳历、农历、节假日和二十四节气等,并实现对某月日期的单选或者多选的日历控件库
-
Kotlin test framework based on the excellent Scalatest
-
微信小程序版Gank客户端
-
A realtime blurring overlay for Android (like iOS UIVisualEffectView)
-
Android Image Viewer inspired by StackOverflow's with swipe-to-dimiss and moving animations.
-
Flexible and Easy HTTP/REST Communication library for Java and Android
-
A custom preference item for easy implementation of a color picker in the preference screen.
-
半圆锯齿背景虚线边框组合实现简单优惠券效果,可实现一些简单组合
工具
-
Android自定义 Lint 检查插件
-
这是一款专为微信小程序开发的插件,目前可在 IntelliJ IDEA 中使用。它可以帮你完成重复机械无趣麻烦的绑定方法的过程,自动的将需要新建的方法注入到 js 文件中去。
-
he Gradle Bintray Plugin allows you to publish artifacts to Bintray.
-
这是一款让你「回到过去」的应用,它的作用与系统中的「终端」完全一致,特别的是,它模拟了各种古董级显示器的显示效果,年代感十足。
技术之外
-
README 的艺术 (By 湾区日报)
为什么 README 全大写?因为 UNIX 系统下 ls 会把文件名大写的文件排在前面;README 文件很重要,需要引起大家重视。好的开源项目只要看 README 就能方便使用了,不用去读代码。