- 博客(12)
- 收藏
- 关注
原创 Android Paint -- 基本使用方法
Paint画笔的基本使用1、Paint画笔画图形、路径2、Paint画笔来画文字Paint.FontMetricsPaint.FontMetricsInt里面有top,ascent,desent, bottom, leading这几个属性top = top线的y坐标 - baseline线的y坐标bottom = bottom线的y坐标 - baseline线的y坐标ascent ...
2019-04-18 14:23:47
500
原创 用什么手段去解决那些重现率极低的 bug
对于那些重现率极低的bug,要用什么样的方式去解决从源码的角度分析问题出现的原因 ;找到特定机型,让QA想办法重现,比如借助自动化工具 ;猜测可能原因,然后在crash附件埋点抓取有效信息,上报到服务器,然后分析解决;然后在项目中加入灰度测试,定位问题,只要能复现就可以。...
2019-03-27 10:02:08
1381
原创 Android Studio 3.3 Unable to start the daemon process.
Unable to start the daemon process.This problem might be caused by incorrect configuration of the daemon.解决方案如下:1、Settings–>Experimental Gradle 的选中对号去掉。2、gradle.properties 的这行 org.gradle.jvmar...
2019-02-01 17:20:46
859
原创 Webview 点击状态按钮,然后再进入下一页,再返回,状态按钮又被初始化了
Webview 上面显示一个 H5 ,然后用户在 H5 上面点击【签到】,当前 H5 页面上显示【已签到】,然后继续点击页面上的一个按钮进入下一个 H5 页面,然后按返回,返回到第一个 H5 ,结果显示为【未签到】了。具体的解决方案如下:1、如果是 在 webview 按 back 键时候重新加载页面了,那么就让 h5 做下状态保存。2、也可能在 goback 的时候就没有重新请求,只是加载了...
2019-01-21 17:08:09
997
原创 Android WebView js 注入时机的把握
webview 注入 js 时机怎么把握?目前onpagefinished 时注入 js里面有方法失效,pagestart 时调用 evaluejavascriptyou 会导致 webview 加载不出来。js 注入代码一般分为两类:1、直接注入 js 代码,这个代码可以立刻执行2、注入 js 文件,这个 js 文件需要等到被加载后才能执行,而且如果 js 文件里面有访问 dom,那还需要...
2019-01-16 14:14:51
3437
1
原创 Android 加载长图片(类似微博长图)
巨图片加载,android BitmapRegionDecoder .1、BitmapRegionDecoder.newInstance();2、bitmap = mDecoder.decodeRegion(mRect, mOptions);直接代码见:https://github.com/WalterBryant/LongImageView...
2019-01-08 23:13:57
1027
原创 Android CheckBox设置不可点击
checkBox.setClickable(false);或者checkBox.setEnalbe(false);
2018-12-28 13:32:24
11710
原创 Android InputMethodmanager 引发的内存泄露
InputMethodmanager 引发的内存泄露是Android 输入法的系统 bug,在15 <= API <= 23 中都存在。通过反射来拿到这个 View 并且置空。@Override protected void onDestroy() { super.onDestroy(); InputMethodManager im = (Inp...
2018-12-26 15:59:30
689
原创 Android 怎么防止多并发请求?比如说一个页面需要请求多个接口,可以跟后台网络交互能做哪些性能优化
Android 本来就是要做并发请求,开线程池在里面发网络请求,如果真要防止并发,那就弄个排队的线程池就行了。可以参考 AsyncTask 在高版本的实现,就是排队。跟后台网络交互的优化,列出来了如下三点:比如频繁调用的接口,可以考虑用长连接;需要传输数据的接口可以考虑让服务器支持304状态,比如 etag 和 last-modified;让服务端把多个小接口合并成一个大接口,减少网络请...
2018-12-14 09:27:59
5795
1
原创 调用了 LinearLayout .scrollBy(-20, 0)
Q:现在有个 LinearLayout 里面水平放置了两个 ImageView,接着调用了linearlayout.scrollBy (-20, 0)。两个子view从视觉上确实右移了。我想着 scroll 是移动了内容,那么子 view 的 left 或者 translationX 应该有一个变化了吧,结果是都没有变化。那么问题来了,移动内容到底移动的是啥?A: scrollTo 和 scro...
2018-12-13 09:57:03
272
原创 关于 Android App 首页性能优化
商城类 App 首页一般内容有着很多的效果且大都是图片,首页 Tab 还是fragment 的。优化的方案基本都是老套路:图片压缩和 cache;不要同时持有太多的 fragment,及时销毁;用 RecyclerView;特别耗内存的代码考虑放在单独进程。一些其他需要注意的方向:1.要控制接口数量,首页的接口控制少量。2.首页布局是否过重3.首页的自定义View里面有没有做...
2018-12-12 17:37:07
820
原创 ScrollView 嵌套 ListView 只显示第一行的源码分析
要带着问题来阅读源码,解惑以满足心中的好奇心,知其然并知其所以然,了解发现 Google 工程师的代码设计原理。1、猜测是在 onMeasure 的时候,只测量了第一个 item。在 MeasureSpec.UNSPECIFIED 的时候,只是拿到了 第 1 个 item 的高度。在 MeasureSpec.AT_MOST 的时候,会把 ListView 的 view 全部加载。推测在 ...
2018-09-25 23:36:28
283
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅