摘要: Git地址 通过扩展Row实现简单的viewpager fun Modifier.horizontalScroll( state: ScrollState, enabled: Boolean = true, flingBehavior: FlingBehavior? = null, reverseS 阅读全文
posted @ 2021-09-11 23:11 dikeboyR 阅读(1328) 评论(0) 推荐(0) 编辑
摘要: 代码传送门 在用javassist 开发gradle插件时 可能很多人碰到这个问题 第一个想到的重启idea 网上比较多的办法就是 1. 重启android studio 2.任务管理器里面杀掉java进程 但是 每次重新编译的时候都会出现这个问题,总不能每次冷编译都重启 android studi 阅读全文
posted @ 2021-08-18 01:30 dikeboyR 阅读(451) 评论(0) 推荐(0) 编辑
摘要: Git传送门 1.应用场景 Android Studio提供了很多性能分析工具,分析CPU耗时,分析内存,但主要是给我们开发阶段使用,而且应用起来也不方便,如果我们能在APP运行的时候捕获所有方法的时间,然后取一些耗时排名 前面的方法来做性能分析,从而能更方便的排查一些性能的问提,或者将耗时统计统一 阅读全文
posted @ 2019-09-23 00:03 dikeboyR 阅读(1010) 评论(0) 推荐(0) 编辑
摘要: Git传送门 Android开发中不可避免的会用到很多第三方库, 如果碰到异常 常常有种心有余而力不足的想法,如果是开源的 你可以吧源码导入进来进行修改,但不可避免的会造成维护性差, 本文提供一个捕获屏蔽第三方库异常的思路,也可以扩展为在编译时修改第三方库代码,从而插入自己的需求 1.Javassi 阅读全文
posted @ 2019-09-11 13:41 dikeboyR 阅读(1519) 评论(0) 推荐(0) 编辑
摘要: github源码传送门 1.前序 主要是介绍怎么拦截所有点击事件,具体数据打点之类的可以参考上一篇 上篇是通过aop 来实现拦截所有点击 事件,如果开发的时候我们到处乱写setOnClickListener,用切面可能就要扫描所有类,可能比较影响编译效率 定义一个简单的activity,包含butt 阅读全文
posted @ 2019-06-10 19:33 dikeboyR 阅读(762) 评论(0) 推荐(0) 编辑
摘要: Type 的话是gson的类型,为了实体跟String相互转换,cahekey对应的缓存key 调用的地方 阅读全文
posted @ 2019-06-01 17:30 dikeboyR 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 无痕打点github源码 1.前提 业务中经常需要对所有的打击事件做统计, 最简单的就是在每个click处加上自己的代码, 或者全继承自己的view, 这些都跟业务耦合性太高,除了一些特殊的点,可能大部分点都是 可以用通用打点的方式来实现, 利用AOP 切面 将打点在编译前从业务中剥离出去,甚至打点 阅读全文
posted @ 2019-06-01 16:03 dikeboyR 阅读(2726) 评论(0) 推荐(0) 编辑
摘要: 先附上自己基于aspject封装的aop 插件 1.为什么要用切面 随着业务越来越复杂,项目中的模块可能越来越多, 面向切面可以减少模块间的耦合,提高模块的复用率 2.aspjectj语法 android aop框架 有好几种,不过aspjectj应该算最成熟了,github上很多开源的也是基于这个 阅读全文
posted @ 2019-04-03 17:48 dikeboyR 阅读(888) 评论(0) 推荐(0) 编辑
摘要: github地址 实现原理很简单 ,自己绘制一个裁剪框, 根据手势 选择到适合的位置 ,然后将选中的区域绘制到一个新的图片上,从而完成裁剪 裁剪框的绘制 这里我是根据点来连线的 因为每个点上会绘制一个拉伸的标识符 源图片的绘制 ,根据屏幕大小 把图片缩放成适合长宽比例的图片 绘制完后 就是根据手势的 阅读全文
posted @ 2018-12-31 20:27 dikeboyR 阅读(9518) 评论(2) 推荐(0) 编辑
摘要: 网上可能有很多实现的插件,有些动不动就上千行代码, 其实很简单 只需要在源码的基础上加一个本地缓存就行, 毕竟源码是最可靠的 https://github.com/dikeboy/flutter-cache-image-local Flutter 自带的有2个 图片的Widget ,Image 和F 阅读全文
posted @ 2018-12-30 22:57 dikeboyR 阅读(14976) 评论(0) 推荐(1) 编辑