摘要:
本文地址 目录 目录目录RV 多样式 MultiType 聊天界面 消息类型纯原生实现多样式addHeaderView 方式ActivityAdapterModelgetItemViewType 方式ActivityAdapterModelMultiType 简介特性基础用法设计思想使用插件自动生成 阅读全文
摘要:
本文地址 目录 目录目录Lambda 表达式基本语法Lambda 表达式中的局部变量启用 Lambda 表达式使用示例使用局限性 Lambda 表达式 Lambda 表达式也称为闭包,是匿名内部类的简短形式。 Lambda 表达式简化了单一方法声明接口的使用,因此 lambda 表达式也称为功能接口 阅读全文
摘要:
本文地址 目录 25 | 集合操作符 Kotlin 的集合 API,本质上是一种数据处理的模式。可以分为几个大类:过滤、转换、分组、分割、求和。 场景模拟 为了研究 Kotlin 集合 API 的使用场景,我们先来模拟一个实际的生活场景:统计学生成绩。 data class Student(val 阅读全文
摘要:
demo地址:https://github.com/baiqiantao/PermissionTest.git一个大坑:SoundPool最多只能播放时长10s左右、大小70kb左右(这些值是我多次测试而来,并不确定)的音频!官方文档文档位置:https://developer.android.google.cn/reference/android/media/SoundPool.htmlThe ... 阅读全文
摘要:
本文地址 目录 20 | Flow:为什么说Flow是冷的? Flow 是在 Kotlin 协程中自成体系的知识点。Flow 极其强大、极其灵活,在它出现之前,业界还有很多质疑 Kotlin 协程的声音,认为 Kotlin 的挂起函数、结构化并发,并不足以形成核心竞争力,在异步、并发任务的领域,Rx 阅读全文
摘要:
数据结构public LongSparseArray recordList=new LongSparseArray();封装所有相关数据的Beanpublic class RecordBean { public static final String VOICE_PATH = Environment.getExternalStorageDirectory().getAbsolutePath() +... 阅读全文
摘要:
本文地址 目录 目录目录56 如何实现一个短网址系统如何通过哈希算法生成短网址MurmurHash 算法如何让短网址更短如何解决哈希冲突问题如何优化哈希算法的性能B+ 树唯一索引布隆过滤器如何通过 ID 生成器生成短网址一个原始网址可能对应多个短网址如何实现高性能的 ID 生成器总结引申 56 如何 阅读全文
摘要:
文档位置:API24/guide/topics/security/permissions.html System Permissions 系统权限Android is a privilege-separated operating system, in which each application runs with a distinct system identity (Linux user I... 阅读全文
摘要:
本文地址 目录 目录目录TabLayout ViewPager Fragment 简介 案例TabLayout 简介文档简介内部类和内部接口XML attributes公共方法两种模式默认样式测试代码ActivityXML布局定义的样式 TabLayout ViewPager Fragment 简介 阅读全文
摘要:
本文地址 目录 目录目录Log 日志工具类 保存到文件Log 类简介一个超强工具类实验案例实验结果一个专门保存日志到文件的工具类一个简单封装的日志工具类一个保存日志到文件的工具类 Log 日志工具类 保存到文件 几个比较流行的开源库 logger 8K hugo 6K timber 5.5K XLo 阅读全文
摘要:
本文地址 目录 目录目录OkHttp 官方wiki 翻译CallsRewriting Requests 重写请求Rewriting Responses 重写响应Follow-up Requests 后续请求Retrying Requests 重发请求总结Dispatch 调度ConnectionsU 阅读全文
摘要:
本文地址 目录 目录目录Okhttp 简介 示例OkHttp简介官方 OverviewWorks with OkHttp示例代码get和post示例拦截器和证书示例retrofit okhttp RxJava 综合示例依赖网络请求接口定义Activity综合配置 Okhttp 简介 示例 OkHtt 阅读全文
摘要:
原文位置:https://github.com/square/okhttp/wiki/Recipes Recipes 食谱/知识点清单We've written some recipes that demonstrate how to solve common problems with OkHttp. Read through them to learn about how everything... 阅读全文
摘要:
项目地址:https://github.com/orhanobut/dialogplus Demo地址:https://github.com/baiqiantao/DialogPlusTestcompile 'com.orhanobut:dialogplus:1.11@aar'简介Dialogplus是一个非常简单易用的Dialog对话框控件,但是这并不是一个Dialog或AlertDialog或... 阅读全文
摘要:
本文地址 目录 目录目录倒计时 总结 Timer Handler CountDownTimer基础方案CountDownTimer [推荐]简介案例RxJava [推荐]Timer + Handler [麻烦]Timer + 普通 HandlerTimer + 静态 HandlerTimer + r 阅读全文
摘要:
本文地址 目录 目录目录RV 判断滑到底部 顶部 预加载 更多 分页项目中的案例【预加载】项目中的另一个案例利用 lastVisibleItemPosition 判断【不靠谱】利用 computeVerticalScrollRange 等判断【不靠谱】利用 canScrollVertically(d 阅读全文
摘要:
本文地址 目录 目录目录RV 数据刷新方式总结 局部刷新 模板代码数据刷新方式总结 局部刷新ActivityAdapter布局模板代码基础配置纯原生BaseRecyclerViewAdapterHelper水平或竖直分割线网格分割线 RV 数据刷新方式总结 局部刷新 模板代码 数据刷新方式总结 局部 阅读全文
摘要:
本文地址 目录 目录目录Kotlin 带接收者的函数 implicit receiver 隐式接收者隐式接收者的概念场景一: 用于省略代码使用自带的 apply 函数使用普通的扩展函数使用带接收者的扩展函数方法对比场景二:提供上下文环境 Kotlin 带接收者的函数 implicit receive 阅读全文
摘要:
本文地址 目录 目录目录RV BaseRecyclerViewAdapterHelper 总结添加依赖功能一览优化Adapter代码Item的点击事件添加列表加载动画添加头部、尾部加载更多自定义加载布局添加分组自定义不同的item类型设置空布局添加拖拽、滑动删除分组的伸缩栏自定义BaseViewHo 阅读全文
摘要:
本文地址 目录 目录目录Kotlin 函数式编程编程范式Kotlin 函数式编程函数是一等公民纯函数局限性实战:函数式的循环使用递归实现循环尾递归 Kotlin 函数式编程 Kotlin 函数式编程 编程范式 函数式编程是一个跟面向对象编程类似的概念,它也是软件工程中的一种编程范式,它是声明式编程的 阅读全文
摘要:
本文地址 目录 目录目录去掉 Android P 上的提醒弹窗背景分析解决方案 去掉 Android P 上的提醒弹窗 减少使用非 SDK 接口,提升系统稳定性 背景 在MIUI 10升级到 Android P 后,对于debuggable=true的app来说,Activity 启动的时候,会在界 阅读全文
摘要:
本文地址 目录 目录目录用 Kotlin 开发 Android 项目的优势有了空安全,再也不怕服务端返回空对象了转型与智能转换,省力又省心比 switch 更强大的 when容器的操作符线程切换,so easy一个关键字实现单例自动 getter、setter 及 class 简洁声明DSL 式编程 阅读全文
摘要:
本文地址 目录 目录目录App Standby BucketPriority buckets各存储分区的限制ActiveWorking setFrequentRare最佳做法 App Standby Bucket 应用待机存储分区 App Standby Bucket Android 9(API 级 阅读全文
摘要:
本文地址 目录 目录目录代码检测工具 PMD 插件PMD 简介AS 插件 PMDPlugin简介插件使用检查结果案例gradle 插件插件源码配置选项最佳集成案例检测结果案例Jenkins 插件How PMD WorksJava Rules 代码检测工具 PMD 插件 官网 GitHub Docum 阅读全文
摘要:
本文地址 目录 目录目录Gradle 的配置Gradle 的版本配置环境变量 GRADLE_HOMEgradlew 是干嘛的环境变量 GRADLE_USER_HOMEIDEA 的 Gradle user homeIDEA 的 User from gradleGradle 依赖的 JDK 配置 Gra 阅读全文
摘要:
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina.com Glide Picasso Fresco UIL 图片框架 MD 目录 目录Glide G 阅读全文
摘要:
本文地址 目录 目录目录代码检测工具 Checkstyle 插件简介检查规则参考规则Suppressions定制 CheckStyle 规则定制 IDEA Code Style 规则AS 插件:CheckStyle-IDEAgradle 插件插件源码配置选项最佳集成案例检测结果案例Jenkins 插 阅读全文
摘要:
本文地址 目录 17 | Context:万物皆有 Context 从概念上讲,CoroutineContext 只是个上下文而已,开发中最常见的用处就是切换线程池,但其背后的代码设计其实比较复杂,Kotlin 协程中比较重要的概念,都或多或少跟 CoroutineContext 有关系。 Coro 阅读全文
摘要:
数值格式化 NumberFormat 简介 java.text.NumberFormat extends java.text.Format extends java.lang.Object 实现的接口:Serializable, Cloneable 直接子类:ChoiceFormat, Decima 阅读全文
摘要:
本文地址 目录 目录目录LruCache DiskLruCache 缓存 简介 案例LruCache缓存策略LruCache 的使用LruCache 的实现原理LinkedHashMap 简介构造函数put 方法get 方法总结LruCache 源码类说明文档源码DiskLruCache缓存路径的选 阅读全文
摘要:
本文地址 目录 目录目录46 | 概率统计如何过滤垃圾短信基于黑名单的过滤器基于规则的过滤器基于概率统计的过滤器什么是朴素贝叶斯算法如何用来做垃圾短信的过滤朴素贝叶斯公式总结引申47 | 向量空间如何实现一个简单的音乐推荐系统基于相似用户做推荐基于共同喜爱的歌曲数量基于用户对相同歌曲的行为基于向量间 阅读全文
摘要:
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina.com Glide Picasso Fresco UIL 图片框架 MD 目录 目录Glide Google推荐 24k简介Git... 阅读全文
摘要:
博文地址 我的GitHub 我的博客 我的微信 我的邮箱 baiqiantao baiqiantao bqt20094 baiqiantao@sina.com 目录 多次点击事件 Android给我们提供了单次点击事件,虽然在设置中我们有发现多次点击事件的案例,如多次点击"版本号"后启用开发者模式、 阅读全文
摘要:
本文地址 目录 21 | Select:选择最快的结果 和 Kotlin 的 Channel 一样,select 在很多编程语言当中都有类似的实现,比如 Go、Rust 等。不同语言中,select 的语法可能不太一样,但背后的核心理念都是 选择更快的结果 。 select 在 Kotlin 1.6 阅读全文
摘要:
本文地址 目录 目录目录常见问题怎么找到截图与视频哪些文件不能通过 DBI 放入内存卡内存卡不能直接插进手机开机黑屏怎么办不能开机时怎么办为什么虚拟系统的序列号变了软件错误无法启动怎么办如何关机游戏提示安装失败提示联网检查是否能运行大气层系统各个系统之间有什么区别系统版本和大气层版本怎么看大气层双系 阅读全文
摘要:
本文地址 目录 目录目录安装游戏 补丁 DLC 金手指 汉化获取游戏资源游戏文件组成安装游戏DBI 安装内存卡安装安装金手指安装汉化补丁文件目录 安装游戏 补丁 DLC 金手指 汉化 游戏安装教程及注意事项 游戏在哪下载?怎么安装?补丁和DLC怎么装? 获取游戏资源 对公众号回复游戏名,会得到下载链 阅读全文
摘要:
本文地址 目录 目录目录硬件加速 Hardware Accelerated官方文档中的描述打开或关闭方式如何判断是否启用了硬件加速硬件加速概念原理怎么就加速了?限制View Layer总结 硬件加速 Hardware Accelerated 参考文章: HenCoder Android 自定义 Vi 阅读全文
摘要:
本文地址 目录 目录目录ImageView scaleType 样式 缩放 图形混合scaleType 属性将图片固定对角线长度等比例伸缩测试代码图片布局16 种图形混合模式 PorterDuff Xfermodes ImageView scaleType 样式 缩放 图形混合 scaleType 阅读全文
摘要:
ViewFlipper介绍ViewFilpper类继承于ViewAnimator,而ViewAnimator类继承于FrameLayout。 ViewAnimator:Base class for a FrameLayout container that will perform执行 animations when switching切换 between its views.ViewFilpp... 阅读全文
摘要:
简介android.widget.Scroller是用于模拟scrolling行为,它是scrolling行为的一个帮助类。我们通常通过它的 startScroll 函数来设置一个 scrolling 行为模型,即在 duration 毫秒时间内从 int startX, int startY 这个点起向X和Y方向分别滚动 int dx 和 int dy 个像素;或者通过它的 fling 函数来设... 阅读全文