首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
android
订阅
掉毛的兔子
更多收藏集
微信扫码分享
微信
新浪微博
QQ
10篇文章 · 0订阅
打造一个丝滑般自动轮播无限循环Android库
最近公司项目在升级AndroidX,由于项目中用到的一些比较老的库都已停止更新维护,因此需要将这些库替换掉,其中就包括自动轮播的Banner库。恰逢笔者在之前写过一个轮播图,因此就在此基础上重构,打造出了一个全新的支持多种样式的轮播库---BannerViewPager。个人觉…
Android 后台运行白名单,优雅实现保活
我们知道,Android 系统会存在杀后台进程的情况,并且随着系统版本的更新,杀进程的力度还有越来越大的趋势。系统这种做法本身出发点是好的,因为可以节省内存,降低功耗,也避免了一些流氓行为。 但有一部分应用,应用本身的使用场景就需要在后台运行,用户也是愿意让它在后台运行的,比如…
比 EventBus 更高效的事件总线(BusUtils)
可以猜测到默认的 busUtilsClass 为 com.blankj.utilcode.util.BusUtils 哈。 当然,如果你项目是开启混淆的话,全量引入 AndroidUtilCode 也是可以的,混淆会帮你去除未使用到的类和方法。 好了,插件和依赖都配置完毕,下面…
接口请求身份认证的Token和RefreshToken的解决方案
最后,当然是开始编码了。 刷新成功后有两种操作,如果返回200,拿到新的token去重新请求当前报401的接口,如果返回410(当然也可以是110,因为这是咋们和后台小伙伴约定的这个时候就是token真正的过期了,直接去重新登录。 后果就是:每个接口都报401时都去刷新toke…
对象池Pools优化
在某些时候,我们需要频繁使用一些临时对象,如果每次使用的时候都申请新的资源,很有可能会引发频繁的 gc 而影响应用的流畅性。这个时候如果对象有明确的生命周期,那么就可以通过定义一个对象池来高效的完成复用对象。 glide中对加载图片时频繁创建对象使用到了对象池。 比如Glide…
一个小巧而强大的 Key-Value 管理框架
之所以说小巧,是因为 DoKV 的实现仅依赖于一个注解、一个接口、四个类。当然,其实现基础不仅仅如此,还需要 APT 技术的支持,需要依赖于 APT 来自动生成某些中间代码,关于 APT 的知识我在以前的一篇博客中也有所介绍,点击查看:APT 通常,我们的应用都会有很多配置项需…
说说Android版本更新
版本升级对于app来讲已经是非常常见的功能了,每次项目的版本迭代、新功能的开发都需要下载更新新版本,通过安装新版本来实现我们的迭代。当然除了这种方式,实际上也有热更新与热修复的存在,无需安装的情况下实现版本的迭代,而且很多大型的项目在有了大量用户的积累后也大都采取了灰度发布的功…
RecyclerView瀑布流优化方案探讨
如果同行看到这篇文章,有好的瀑布流优化方案,欢迎给出建议,或者给链接也可以。 产品说让参考抖音快手类的app,让瀑布流滑动效果特别流畅……但目前遇到问题是滑动十几页没什么问题,但是滑动三四十页的时候会出现卡顿。欢迎同行给出建议! 最简单规则瀑布流实现,下面这种是设置3列数据,然…
支持横向、竖向无限滚动和自定义指示器的广告条BannerView和淘宝头条效果
产生ANR 的原因: 开篇已经大致介绍,就是调用ViewPager.setCurrentItem(),底层会去测量滚动的偏移量,由于实现无线滚动的方式是将适配器中间的getItemCount()方法返回一个无穷大的数,所以在测量偏移量时会特别耗时,这样就导致了ANR异常。
Android 实现一个通用的圆角布局
一般的实现方法是上面的图片左上和右上设置圆角,下面的文字部分左下和右下设置圆角,而 Glide 默认是不支持指定位置设置圆角的,需要通过自定义 Transformation 实现,而 GIF 动图也是不支持圆角的。 完整的描述了绘制流程,后面的注释是我补充的对应的方法,因此我们…