- 博客(7)
- 收藏
- 关注
原创 一种导致AbstractMethodError问题的原因
1)App和B-lib依赖于A-lib的不同版本,并且都实现了A-lib中定义的一个接口IFunc,运行时A-lib会调用各IFunc实现; 2)B-lib仅在编译阶段依赖A-lib,实际运行的是APP中集成的A-lib; 3)APP端升级了A-lib,在IFunc中新增了一个方法aNewMethod()。由于B-lib并未针对v2版本的A-lib进行适配,因此运行时当A-lib调用B-l...
2018-12-11 18:00:11
7238
原创 Handy Script
通过egrep命令在一堆文件中寻找crash信息 ls | grep aplog | xargs egrep 'E\s+Crash\s+:' > output_file 对于搜索内容为固定字符串的场景,fgrep速度会更快一些 ls | fgrep aplog | xargs fgrep 'E Crash :' > ~/Desktop/NaviAuto_filter.l...
2018-10-16 10:07:04
132
原创 [Shell Script on Mac] Log filter for batch of files
#!/bin/bash# 脚本功能# 生成带有数字序号的文件名,然后在一组文件中寻找包含指定关键字的行function log_file_name() { if [ $# -ne 2 ]; then echo 'argument count MUST be 2'; return; fi main_name=$1 if [ -z $main_nam...
2018-06-23 18:26:03
120
原创 Android代码调整ImageView图标颜色
问题:只有一套图标,图标本身的内容比较简单,但是在不同场景下需要显示不同的颜色,且只改变图标颜色,不改变透明度解法:通过如下参数构造ColorMatrix,进而构造ColorMatrixColorFilter,然后调用ImageView.setColorFilter()方法调整图标颜色float[] m = { 0, 0, 0, 0, R, 0, 0, 0, 0,...
2018-06-05 19:35:43
2485
1
原创 TextView & Spannable
TextView.setText(CharSequence text)该方法接受一个CharSequence类型的参数作为输入,除了String之外,我们还可以提供Spannable类型的参数。Spannable.setSpan(Object what, int start, int end, int flags)该方法可以使用特定的【markup对象】对指定区间的文字进行格式设置,可以使用的属性...
2018-05-15 10:05:19
151
原创 Android Widget 分割线的实现
通常,在布局中实现分割线效果,最简单的方式就是通过定义一个<View>元素,设置合适的宽高和颜色。但是这种做法,在Widget中却无法正常工作,具体表现就是Launcher无法显示Widget。原因就是Android仅支持Widget显示有限的几种布局类型,恰好View不在支持的范围内,解决办法就是用诸如FrameLayout等类型的View进行替代...
2018-05-14 19:03:53
182
原创 Android Studio Best Practice on Mac
1. Shift + Enter 快速跳转至下一行通过此快捷键,可以直接从当前行的任意位置直接跳转至新行,无需将光标移至行尾2. Double-click Shift此快捷键可以唤出一个名为“Search everywhere”的搜索界面,可以搜索很多类型的资源3. Command + J 调出Live Template列表常用代码模板,比如常量定义(const)、打印log(logd)等等还可以...
2018-05-02 11:38:50
92
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人