背景 最近好几个网友都来问我HWC是根据什么条件来决定client合成还是device,作为之前一直"吹牛逼",说自己如何好学,如何积极回答网友问题的博主,这波必须安排,看完...
背景 最近好几个网友都来问我HWC是根据什么条件来决定client合成还是device,作为之前一直"吹牛逼",说自己如何好学,如何积极回答网友问题的博主,这波必须安排,看完...
APK 自动编译平台搭建(gitlab+jenkins+svn+dingding) 搭建一个在 Jenkins 上的自动编译平台,将 apk 发布到 SVN,之后把编译结果...
常见导致内存问题的案例 1. Handler的使用 在 Handler 代码里 android.os.Handler#enqueueMessage 很明显能看到 messag...
场景 很多公司都是自建的gitlab存放代码,主干分支一般都是保护的,请求merge需要用浏览器登录到gitlab,然后再发起,一定程度上浪费了时间在来回切换上。于是在And...
背景 需求是在系统应用模拟摇杆,达到对所有应用都能模拟输入的效果,所以一定会使用到InputManager。但是大多demo和文章 模拟摇杆和功能使用都是在同一个应用,所以可...
快速删除时,之所以IndexOutOfIndexException。是因为在移除动画执行时,还可以操作View。所以会对同一个position执行多次mDatas.remove(position),最终导致数组越界。
解决方案就是去抖动,防止按钮快速点击。
通过Thread.sleep()虽然可以达到这个效果,但是略显复杂。
可以参考下下面这种方式:
// 两次点击按钮之间的点击间隔不能少于1000毫秒
private static final int MIN_CLICK_DELAY_TIME = 1000;
private static long lastClickTime;
public static boolean isFastClick() {
boolean flag = false;
long curClickTime = System.currentTimeMillis();
if ((curClickTime - lastClickTime) >= MIN_CLICK_DELAY_TIME) {
flag = true;
}
lastClickTime = curClickTime;
return flag;
}
前言: 之前写过一个小工具输入网易云音乐上的昵称,即可查看两人喜欢的音乐中,有哪些是相同的,重合率有多少。 感兴趣的可以看这里:https://www.jianshu.com...
场景 网上demo做法大多是使用SurfaceView或者TextureView,在view创建可用(surfaceCreated,onSurfaceTextureAvail...
在解决项目中相机某些机型无法自动对焦的问题时,在网上找到了一些资料,写下解决问题过程,以备查看。 Android相机实时自动对焦的完美实现Android图像滤镜框架GPUIm...
需求 最近做了一个单个LottieAnimationView根据用户点击选项的不同,加载不同的lottie动画的需求。踩了一些坑,比如lottie动画只能播放第一个,后面的就...
最近大概花了半个月的碎片时间看完了《影响力》这本广受好评的书,其实书中的内容并不是很多,作者为了让读者便于理解和接受,花了很多的笔墨在讲生活中我们真实的遇到的例子。顺带一提,...
计划写一系列音视频相关文章。 开篇介绍下还不错的的开源资料。(由于工作中抽时间写文章,不能一次写完,所以本文会持续更新) 先推荐一篇音视频入门的文章,是由雷神写的:FFMPE...
查看该表,发现并没有实现实例化接口。通过下面方法反射出所有的属性,发现确实多了一个$change 和一个serialVersionUID。 通过查阅资料,AndroidStu...
@呦_木头呀 握手
毕业一年,入职四家公司?说出来你可能不信,我去年本科某211毕业,正准备入职第四家公司了。 ( 一 ) 本科于某学校新开的专业(IT类)就读。大学期间像很多人一样浑浑噩噩的就到了大三,准备实习。实...
这篇文章主要是对工作两年来用过的架构发表一下自己感触,如果说的不对请轻喷. 关于架构 根据百科中的软件架构,架构描述的对象是直接构成系统的抽象组件,各个组件之间的连接则明确和...
说出来你可能不信,我去年本科某211毕业,正准备入职第四家公司了。 ( 一 ) 本科于某学校新开的专业(IT类)就读。大学期间像很多人一样浑浑噩噩的就到了大三,准备实习。实...