稀有猿诉

十年磨一剑,历炼出锋芒,说话千百句,不如码二行。

让你不再惧怕内存优化

之前曾经写过一篇关于如何做性能优化的文章,现在针对内存这一专项再做精细化的讨论。对于安卓应用开发来说,内存究竟会遇到什么样的问题,有什么方法可以用来测试和分析,以及有什么样的策略可以去实践优化,今天就来好好聊聊这个话题。

Android Sync Barrier机制

诡异的假死问题

前段时间,项目上遇到了一个假死问题,随机出现,无固定复现规律,大量频繁随机操作后,便会出现假死,整个应用无法操作,不会响应事件,会发生各种奇怪的ANR,且trace不固定。非常之诡异。

经过大量的复现研究和分析, 以及大神的指点后,发现与同步屏障(Sync Barrier)有关系,于是发现有必要研究一下这个东西。

Android Animation Internal Secrets

前面的文章重点讲了如何使用安卓平台提供的能力来做好一个动画。为了更深入的理解,需要去了解一下动画框架的内部机理,这样能够帮助我们做出更优雅的动画实现。

Android Animation Made Easy

动画在任何一个GUI系统中都是一个非常重要的设计元素,它可以让交互变得优雅,让界面变得炫酷,让操作变得更加的舒畅,让状态过渡变得更加的顺滑,对视觉效果有极大的提升,时而提升用户体验,特别是对于移动应用来说,更是如此。就好比水果平台,最为吸引人的地方就在于其炫酷流畅的动画效果。早期的Android,在动画这一块确实差,不过,近些年,随着谷歌不断的加大力度在提升,现在来说安卓在动画这一块已经跟水果差不多了。今天就来聊一聊关于动画的话题。

Android Layout大点兵

智能手机催生了移动互联时代,现如今移动应用越来越成为最为核心的终端。而GUI页面是移动互联终端的标配,做好一个GUI页面,是非常重要的,能极大的提升用户体验和用户满意度。安桌生态,自古以来(没那么久,自安桌流行以来)在GUI方面就逊于水果生态,GUI页面的美观程度,操作流畅度以及动效的优美程度,水果生态是远好于安卓生态的。好消息是近几年的版本谷歌在这些方面做了大量努力,几乎追平与水果平台的差距。特别是在support libraries(现在是叫AndroidX)里面加入一些在各方面都远好于标准API中的UI组件,现在只要稍加努力就可以做出与水果一样,甚至更炫酷的GUI页面。

Android ConstraintLayout使用攻略

ConstraintLayout是新一代的布局,它汲取了众家之长,把布局的概念进行了大统一,灵活且强大,基本上可以干掉以前所有的常用布局(LinearLayout, RelativeLayout和FrameLayout)。自从Android Studio 2.3(大约在2017年)后,它就变成了Android Studio的默认模板的布局控件,可以看出谷歌对它的钟爱程度。今天就来学习一下如何使用这个新布局神器。

Android事件高级手势处理

GestureDetector只能帮我们处理并识别一些常用的简单的手势,如点击,双击,长按,滑动(Scroll)和快速滑动(Fling)等,一般情况下,这些足够我们使用了,但有些时候需要一些更为复杂的手势操作,如Translate,Zoom,Scale和Rotate,以及像处理一些多点触控(MultiTouch),这就需要开发人猿自己处理了,本文将讨论一下这些内容。

Android View滑动处理大法

对于触控式操作来说,滑动是一个特别重要的手势操作,如何做到让应用程序的页面滑动起来如丝般顺滑,让用户感觉到手起刀落的流畅感,是开发人猿需要重点解决的问题,这对提升用户体验是最为重要的事情。本文就将探讨一下,Android中View的滑动相关知识,以及如何做到丝般顺滑。

Android View 事件派发流程

自从乔帮主横空出世推出了iPhone以来,触控式的操作便成了21世纪智能设备的标准输入方式。对于同是智能操作系统的Android来说,也不例外。事件,特别是触控事件对于移动应用程序开发来说是一个非常重要的,也是开发人猿必须掌握的事情。这里就要讨论一下Android View中的Event系统,重点探讨一下事件的派发流程。