12 2021 档案

摘要:1、构造手机验证码:使用random对象生成要求的随机数作为验证码,例如4位验证码:1000~9999之间随机数; 2、使用接口向短信平台发送手机号和验证码数据,然后短信平台再把验证码发送到制定手机号上,接口参数一般包括:目标手机号,随机验证码(或包含失效时间),平台接口地址,平台口令; 3、保存接 阅读全文
posted @ 2021-12-30 17:33 Misdirection 阅读(242) 评论(0) 推荐(0) 编辑
摘要:本篇主要帮助剖析理解 Flutter 里的列表和滑动的组成,用比较通俗易懂的方式,从常见的 ListView到 NestedScrollView 的内部实现,帮助你更好理解和运用 Flutter 里的滑动列表。 「本篇不是教你如何使用 API ,而是一些日常开发中不常接触,但是很重要的内容」。 Fl 阅读全文
posted @ 2021-12-29 17:01 Misdirection 阅读(83) 评论(0) 推荐(0) 编辑
摘要:前言 平时喜欢看今日头条,上面的财经、科技和NBA栏目都很喜欢,无意中发现他的点赞动画还不错,一下子就吸引到了我。遂即想要不自己实现一下。 最终效果对比如下: 头条: 仿写效果: 一、导读 学习的过程中发现,每个知识点都是一个小小的体系。比如Glide源码解析,我看到有作者写了10篇文章一个系列来解 阅读全文
posted @ 2021-12-28 16:04 Misdirection 阅读(233) 评论(0) 推荐(0) 编辑
摘要:前言 在项目中我们常常继承AppCompatEditText或EditText自定义验证码输入框来代替系统输入框,以满足UI设计需求,如: 直线形输入框方形输入框 | |本文主要分析自定义验证码输入框过程中常被忽视的光标问题及个人的一点经验总结 onDraw方法一直被调用 我们在onDraw方法中添 阅读全文
posted @ 2021-12-27 16:01 Misdirection 阅读(266) 评论(0) 推荐(0) 编辑
摘要:由于后台返回统一数据结构,比如 code, data, message; 使用过 Retrofit 的同学一定定义过类似 BaseResponse 这种类,但是 BaseResponse 的处理逻辑都大同小异, 每次都写着实让人很烦,有没有什么好的方式解决这一痛点呢?本文讲介绍一种优雅的方式 来解决 阅读全文
posted @ 2021-12-26 14:14 Misdirection 阅读(95) 评论(0) 推荐(0) 编辑
摘要:起因 前些日子在网上看到了一个h5的比较炫的3D球体文字效果,感觉挺有意思,就准备在Android侧进行一下复现,废话少说,先看一下效果(gif看上去有些卡,实际不会) 核心原理 文字坐标 首先要做的就是为每个文字确定一个坐标,Android采用的是左手坐标系,而且我们的效果又是一个球体,所以我采用 阅读全文
posted @ 2021-12-25 14:37 Misdirection 阅读(226) 评论(0) 推荐(0) 编辑
摘要:一、背景 最近公司中的相册组件被业务方反馈了新问题,在 targetSdk=30 的 Android 10 手机上运行相册,缩略图会加载不出来,于是就开启了这次的趟坑之路。 定位问题 首先,我在相册Demo中把 targetSdk 设置到 30, 然后在 Android 10 测试机上运行,发现缩略 阅读全文
posted @ 2021-12-23 11:14 Misdirection 阅读(963) 评论(0) 推荐(0) 编辑
摘要:前言 说到 Android 启动优化,大家第一时间可能会想到异步加载。将耗时任务放到子线程加载,等到所有加载任务加载完成之后,再进入首页。 多线程异步加载方案确实是 ok 的。但如果遇到前后依赖的关系呢。比如任务2 依赖于任务 1,这时候要怎么解决呢。 最简单的方案是将任务1 丢到主线程加载,然后再 阅读全文
posted @ 2021-12-22 13:58 Misdirection 阅读(243) 评论(0) 推荐(0) 编辑
摘要:Dagger 和 Koin 无疑是 Android 中最流行的两个依赖注入框架。这两个库具有相同的用途,而且看起来非常相似,但它们在底层的工作方式却非常不同。 那么 Hilt 是什么呢?Hilt 是一个内部使用 Dagger 的库,只是简化了它的用法,因此我在这里所说的有关 Dagger 的内容也适 阅读全文
posted @ 2021-12-21 10:47 Misdirection 阅读(269) 评论(0) 推荐(0) 编辑
摘要:都2021了,RecyclerView嵌套滑动置顶应该已经被说烂了吧,但是如果项目中真的需要一个这样的结构应用到首页,想找到一个成熟的方案并不容易。这篇文章给出的是已稳定运行大半年的嵌套滑动代码。代码地址: https://github.com/youlookwhat/ByRecyclerView/ 阅读全文
posted @ 2021-12-20 16:01 Misdirection 阅读(82) 评论(0) 推荐(0) 编辑
摘要:列表的内容是由服务器返回的分页数据,每次浏览到当前页的尾部,都会拉取下一页的数据。这中断用户的浏览,不免产生等待。产品希望让这个过程无感知。一种实现方案是预加载,即在一页数据还未看完时就请求下一页数据,让用户感觉列表的内容是无穷的。 监听列表滚动状态第一个想到的方案是监听列表滚动状态,当列表快滚动到 阅读全文
posted @ 2021-12-18 18:03 Misdirection 阅读(113) 评论(0) 推荐(0) 编辑
摘要:MotionEffect MotionEffect是2.1中的一个新的MotionHelper,可以让你根据视图的整体运动方向,自动为其引用的视图添加关键帧。它可以简化很多过渡动画的创作。 为了更好地理解它的作用,请看下面的例子。这个例子只使用了MotionLayout的start和end功能,它自 阅读全文
posted @ 2021-12-17 14:50 Misdirection 阅读(152) 评论(0) 推荐(0) 编辑
摘要:面试的时候经常会被问及多线程同步的问题,例如: “ 现有 Task1、Task2 等多个并行任务,如何等待全部任务执行完成后,开始执行 Task3 ? ” Kotlin 中有多种实现方式可供选择,本文将所有这些方式做了整理: Thread.join Synchronized ReentrantLoc 阅读全文
posted @ 2021-12-16 15:15 Misdirection 阅读(257) 评论(0) 推荐(0) 编辑
摘要:在闲暇冲浪的时候,无意间看到了这张设计图,眼睛一亮,感觉这个设计和创意非常酷,打算着手实现一下。关于设计图的作者没找到,如果有人知道的话,请告知我,我会添加设计引用的,欢迎来我的Github 设计图如下: 整体效果图如下: 源码Github: https://github.com/DingMouRe 阅读全文
posted @ 2021-12-15 16:41 Misdirection 阅读(214) 评论(0) 推荐(0) 编辑
摘要:一般手机上的 Android App,主要的交互方式是点击。用户在点击后,App 可能做出在页面内更新 UI、新开一个页面或者发起网络请求等操作。Android 系统本身没有对重复点击做处理,如果用户在短时间内多次点击,则可能出现新开多个页面或者重复发起网络请求等问题。因此,需要对重复点击有影响的地 阅读全文
posted @ 2021-12-14 11:40 Misdirection 阅读(531) 评论(0) 推荐(0) 编辑
摘要:基本思路 游戏逻辑比较简单,所以没有使用 MVI 之类的框架,但是整体仍然遵从数据驱动UI的设计思想: 定义游戏的状态 基于状态的UI绘制 用户输入触发状态变化 1. 定义游戏状态 游戏的状态很简单,即当前各棋子(Chees)的摆放位置,所以可以将一个棋子的 List 作为承载 State 的数据结 阅读全文
posted @ 2021-12-13 11:50 Misdirection 阅读(135) 评论(0) 推荐(0) 编辑
摘要:老规矩,咱们先来看看效果图! 再来看android的实现效果。 下面我们和自定义view实现超萌动感天气小太阳一样,开始解析动画!(没看过天气小太阳的朋友可以先去看天气小太阳,有些天气小太阳讲过的套路将不再讲,同时需要掌握path、camera、贝塞尔曲线等,不然部分代码可能会引起不适)。 我们先把 阅读全文
posted @ 2021-12-12 10:31 Misdirection 阅读(88) 评论(0) 推荐(0) 编辑
摘要:本篇效果图: 新增效果(不同于本篇效果的另一种效果,包含在本项目中): 第一张图 通过RecyclerView+Vlayout多布局实现;第二张具有实战性质的效果图 通过CoordinatorLayout+RecyclerView实现; 第一版得布局结构图: 起初考虑到TabLayout和Recyc 阅读全文
posted @ 2021-12-10 11:49 Misdirection 阅读(216) 评论(0) 推荐(0) 编辑
摘要:前言 在现在的App设计中,轮播基本成为了每个应用的“标配”,有了轮播,就自然需要有对应的指示器,代表当前轮播的进度,现在市面上指示器的样式大部分都是基于小圆点的形式,实现这个基本的效果网上也有很多轮子,本文主要是在实现基本效果的基础上,在切换圆点之间添加一个粘性过渡的动画效果。 效果预览 实现思路 阅读全文
posted @ 2021-12-09 10:13 Misdirection 阅读(54) 评论(0) 推荐(0) 编辑
摘要:/ 前言 / 还是老套路,先来看看实现的效果! 在写这个效果之前,需要熟悉Rv的回收复用机制,因为实现这个效果,需要自定义LayoutManager()… 众所周知,RecyclerView 是一个可滑动的View,那么他的回收/复用入口一定是在onTouchEvent()事件中 滑动过程中响应的是 阅读全文
posted @ 2021-12-08 11:47 Misdirection 阅读(54) 评论(0) 推荐(0) 编辑
摘要:原文链接:https://juejin.im/post/5eb3e0d6f265da7c002028cd 这次说下Android中的事件分发机制从开始点击屏幕开始,就会产生从Activity开始到decorview一直到最里层的view一连串事件传递。每一层view或者viewgroup都会首先调用 阅读全文
posted @ 2021-12-07 13:44 Misdirection 阅读(190) 评论(0) 推荐(0) 编辑
摘要:原文链接:https://juejin.cn/post/7024883320269832205 之前在dribbble看到一个很好看的动画效果,很想要,遂仿之。也为了练一下自定义控件,有段时间了,现在整理出来 dribbble地址:https://dribbble.com/shots/4761564 阅读全文
posted @ 2021-12-06 15:41 Misdirection 阅读(87) 评论(0) 推荐(0) 编辑
摘要:1. 问题/坑点 1.1 item宽高不生效问题 需要注意的是,AdapterViewFlipper 在布局时,宽高一定要用 match_parent 或者 具体dp值。 如果宽、高中使用了 wrap_content 时,会导致 AdapterViewFlipper 容器的宽高,最终变成第一个ite 阅读全文
posted @ 2021-12-06 11:32 Misdirection 阅读(98) 评论(0) 推荐(0) 编辑
摘要:越来越多的App需要共享手机屏幕给他人观看,特别是在线教育行业。Android 从5.0开始支持了MediaProjection,利用MediaProjection ,可以实现截屏录屏功能。 本库对屏幕采集编码进行了封装,简单的调用即可实现MediaProjection权限申请,H264硬编码,错误 阅读全文
posted @ 2021-12-04 21:33 Misdirection 阅读(206) 评论(0) 推荐(0) 编辑
摘要:/ DataStore介绍 / Jetpack DataStore 是一种改进的新数据存储解决方案,允许使用协议缓冲区存储键值对或类型化对象。 DataStore 以异步、一致的事务方式存储数据,克服了 SharedPreferences(以下统称为SP)的一些缺点。 DataStore基于Kotl 阅读全文
posted @ 2021-12-03 10:40 Misdirection 阅读(368) 评论(0) 推荐(0) 编辑
摘要:作者:itfitness 链接:https://www.jianshu.com/p/f084082cc0c6 本文目录: 前言 之前使用Camera实现了一个自定义相机滤镜(Android自定义相机滤镜 ),但是运行起来有点卡顿,这次用Camerax来实现一样的效果发现很流畅,在此记录一下,也希望能 阅读全文
posted @ 2021-12-02 10:31 Misdirection 阅读(346) 评论(0) 推荐(0) 编辑
摘要:ANR监控是一个非常有年代感的话题了,但是市面上的ANR监控工具,或者并非真正意义上的ANR的监控(而是5秒卡顿监控);或者并不完善,监控不到到所有的ANR。而想要得到一个完善的ANR监控工具,必须要先了解系统整个ANR的流程。本文分析了ANR的主要流程,给出了一个完善的ANR监控方案。该方案已经在 阅读全文
posted @ 2021-12-01 13:57 Misdirection 阅读(453) 评论(0) 推荐(0) 编辑
摘要:这个系列我做了协程和Flow开发者的一系列文章的翻译,旨在了解当前协程、Flow、LiveData这样设计的原因,从设计者的角度,发现他们的问题,以及如何解决这些问题,pls enjoy it。 这篇文章是分析LiveData重放污染最早的一篇文章,同时作者也给出了基本的解决方案,这也是后续Flow 阅读全文
posted @ 2021-12-01 13:54 Misdirection 阅读(47) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示