注册
环信即时通讯云

环信即时通讯云

单聊、群聊、聊天室...
环信开发文档

环信开发文档

环信FAQ

环信FAQ

集成常见问题及答案
RTE开发者社区

RTE开发者社区

汇聚音视频领域技术干货,分享行业资讯
技术讨论区

技术讨论区

技术交流、答疑
资源下载

资源下载

收集了海量宝藏开发资源
iOS Library

iOS Library

不需要辛辛苦苦的去找轮子, 这里都有
Android Library

Android Library

不需要辛辛苦苦的去找轮子, 这里都有
0
评论

AES 前后端加解密方案 AES

王二蛋和他的张大花 发表了文章 • 1149 次浏览 • 2021-12-15 11:37 • 来自相关话题

AES 前后端加解密方案 背景 最近有一个需求:后端对敏感数据进行加密传输给前端,由前端解密后进行回显。在讨论之后,定下了AES加解密方案 概念 AES: 密码学中的高级加密标准(Advanced Encryption Standard,AES),又称Rijn... ...查看全部
0
评论

聊一聊ThreadLocal,终于搞明白了 ThreadLocal

王二蛋和他的张大花 发表了文章 • 760 次浏览 • 2021-12-15 11:34 • 来自相关话题

ThreadLocal是什么? 试想以下情况: 在多线程的情况下,对一同一个变量操作可能会出现冲突,解决的办法就是对这个变量加锁。但是我们有时候其实就是想要一个全局变量,不想让多个线程去干扰。那么能不能有一个变量,名字相同,但是多个线程操作的时候又不会相互影响... ...查看全部
0
评论

【墙裂推荐】球球了,RPC之间调用别再使用 if-else做参数校验了 RPC

王二蛋和他的张大花 发表了文章 • 1025 次浏览 • 2021-12-15 11:32 • 来自相关话题

RPC调用时使用 @Validated进行参数校验不起作用 球球了,RPC之间调用别再使用 if-else做参数校验了。众所周知,@Validated 是一款非常好用的参数校验工具。但在RPC调用时不可用,在当前的微服务大环境下,微服务之间的调用怎么做到优雅... ...查看全部
0
评论

Flutter APP 前期准备工作 Flutter

王二蛋和他的张大花 发表了文章 • 804 次浏览 • 2021-12-15 11:25 • 来自相关话题

组件库可参考:flutter.dev、bruno(贝壳开源组件库) 以下从部分GetX文档转载 用于记录。 框架: Flutter GetX GetX 是 Flutter 上的一个轻量且强大的解决方案:高性能的状态管理、智能的依赖注入和便捷的路由管理。 Get... ...查看全部
0
评论

Android中的类加载器 源码分析 Android

柳天明 发表了文章 • 873 次浏览 • 2021-12-13 14:11 • 来自相关话题

类的生命周期加载阶段加载阶段可以细分如下加载类的二进制流数据结构转换,将二进制流所代表的静态存储结构转化成方法区的运行时的数据结构生成java.lang.Class对象,作为方法区这个类的各种数据的访问入口加载类的二进制流的方法从zip包中读取。我们常见的JA... ...查看全部
0
评论

Android 多线程-IntentService详解 IntentService Android

柳天明 发表了文章 • 653 次浏览 • 2021-12-13 14:09 • 来自相关话题

IntentService 一、IntentService概述   上一篇我们聊到了HandlerThread,本篇我们就来看看HandlerThread在IntentService中的应用,看本篇前建议先看看上篇的HandlerThread,有助于我们更好掌... ...查看全部
0
评论

Android onSaveInstanceState/onRestoreInstanceState 原来要这么理解 Android

柳天明 发表了文章 • 1206 次浏览 • 2021-12-13 14:06 • 来自相关话题

前些天,有位小伙伴兴匆匆地跑过来给我展示一个现象:Activity 里有个EditText,点击该EditText 输入一些文字。此时,转动手机方向,Activity 变成横屏了,而EditText 上的文字依然保留。 问我:为啥EditText上文字能够恢复... ...查看全部
0
评论

Spring Boot + Redis 解决重复提交问题,还有谁不会?? Spring Boot Redis

王二蛋和他的张大花 发表了文章 • 764 次浏览 • 2021-12-13 10:13 • 来自相关话题

前言 在实际的开发项目中,一个对外暴露的接口往往会面临很多次请求,我们来解释一下幂等的概念:任意多次执行所产生的影响均与一次执行的影响相同。按照这个含义,最终的含义就是 对数据库的影响只能是一次性的,不能重复处理。如何保证其幂等性,通常有以下手段: 1、数据库... ...查看全部
0
评论

FlutterWeb初体验 FlutterWeb

王二蛋和他的张大花 发表了文章 • 913 次浏览 • 2021-12-13 10:11 • 来自相关话题

FlutterWeb初体验 [toc] 背景 因为最近业务需求的变动,在APP的某一部分页面会经常性发生变动,一般情况下来说,这种不稳定的页面不应该由原生来承担,修改发版的成本太大了,最合理的做法是由H5来承担,由原生提供必要的bridge来调用原生方法,但是... ...查看全部
0
评论

一步一步完成Flutter应用开发-掘金App文章详情, 悬浮,标题动画 Flutter

王二蛋和他的张大花 发表了文章 • 972 次浏览 • 2021-12-13 10:06 • 来自相关话题

这边文章主要将掘金app的文章详情界面的内容构造和效果的实现,也是完结篇,或者有兴趣的同学们可以谈论想要去实现哪个页面的或者功能都可以谈论起来。一起进步。一个人终究没有一群人会走得远。 标题部分 看了一下掘金app文章详情的效果,我的思路是自定义一个appba... ...查看全部
0
评论

Android论网络加载框架(Android-async-http,afinal,xUtils,Volley,okhttp,Retrofit)的特点和优缺点 Android https

柳天明 发表了文章 • 1016 次浏览 • 2021-12-10 17:08 • 来自相关话题

一:HTTP,TCP,UDP,Socket简要介绍 1、TCP TCP简要介绍 TCP是面向连接的、传输可靠(保证数据正确性且保证数据顺序)、用于传输大量数据(流模式)、速度慢,建立连接需要开销较多(时间,系统资源)。 TCP三次握手 建立一个TCP连接时,需... ...查看全部
0
评论

Android查看第三方库的依赖树汇总 Android

柳天明 发表了文章 • 934 次浏览 • 2021-12-10 17:07 • 来自相关话题

项目的开发过程中,我们或多或少都会引入第三方库,引入的库越多,越容易产生库之间的依赖冲突。 下面就拿我遇到的问题还原一下: 之前接人容联客服系统的时候,集成完成后进入客服页面发生闪退,我们回顾一下错误信息: 我们关键看一下报错代码: java.lang.No... ...查看全部
0
评论

Android Canvas画布解析 canvas Android

柳天明 发表了文章 • 684 次浏览 • 2021-12-10 17:06 • 来自相关话题

1.简介在开发中,我们经常需要自定义View去实现各种各样的效果,在这个过程中经常需要用到Canvas画布去绘制各种各样的图形和图案,因此,熟练地掌握Canvas的各种使用方法,就显得尤为重要。本文将简要介绍Canvas的各种用法,加深大家的理解。2.绘制各种... ...查看全部
0
评论

写动画不用愁,Lottie 已经支持 Jetpack Compose 啦! Lottie

王二蛋和他的张大花 发表了文章 • 1248 次浏览 • 2021-12-10 14:45 • 来自相关话题

概述 Lottie 是一款优秀的移动应用动画效果框架,支持为原生应用添加动画效果。Lottie 在不需要对代码进行重写的情况下让工程师更加方便的创建更丰富的动画效果,有了 Lottie 就不再需要使用 Gif 动画来展现效果,在移动开发领域 Lottie 已经... ...查看全部
0
评论

Flutter | 启动,渲染,setState 流程 Flutter

王二蛋和他的张大花 发表了文章 • 703 次浏览 • 2021-12-10 14:33 • 来自相关话题

前言 用了这么久 Flutter 了,居然都不知道他的启动过程,真的是学之有愧啊,今天我们来分析一下 Flutter 的启动流程,以及他的渲染过程,对其做一个简单的剖析。 启动流程 Flutter 的启动入口在 lib/main.dart 里的 main() ... ...查看全部
0
评论

其他都是错的,只有这一篇正确解决:Flutter Textfield长按报错修复:NosuchMethodError: The getter ‘pasterBu Flutter

王二蛋和他的张大花 发表了文章 • 728 次浏览 • 2021-12-10 14:20 • 来自相关话题

正确解决:Flutter Textfield长按报错修复:NosuchMethodError: The getter 'pasterButtonLabel' was ca ????????? 为什么叫正确解决?? 关于这个问题,我在百度上看过很多人的答案,基本... ...查看全部
0
评论

实现穿梭栈帧的魔法--协程 协程 kotlin

柳天明 发表了文章 • 690 次浏览 • 2021-12-09 15:06 • 来自相关话题

1. 协程-穿梭栈帧的魔法 协程的特性是代码中调用一次,实际会执行2次,第一次如果不满足条件先return一个状态,当满足条件的时候线程池会回调该方法执行第二次,而且还具有单例特性(指该函数第一次和第二次执行期间共享同一个上下文),妥妥的操作栈帧的魔法师。 2... ...查看全部
0
评论

构建Java IO框架体系 io Java

柳天明 发表了文章 • 674 次浏览 • 2021-12-09 15:06 • 来自相关话题

IO框架 Java IO的学习是一件非常艰巨的任务。 它的挑战是来自于要覆盖所有的可能性。不仅存在各种I/O源端还有想要和他通信的接收端(文件/控制台/网络链接),而且还需要以不同的方式与他们进行通信(顺序/随机存取/缓冲/二进制/字符/行/字 等等)这... ...查看全部
0
评论

kotlin 与java 互操作 kotlin

柳天明 发表了文章 • 809 次浏览 • 2021-12-09 15:04 • 来自相关话题

简介 大多数情况下,你不需要关注这个问题。但是,如果你的代码中包含了部分Java代码,了解这些可能帮你解决一些棘手的问题,同时让你设计的Api更加可靠 互操作性与可空性 Java世界里所有对象都可能是null,当一个kotlin函数返回string类型值,你不... ...查看全部
0
评论

LiveData学习记 LiveData Android

柳天明 发表了文章 • 960 次浏览 • 2021-12-09 15:03 • 来自相关话题

LiveData 使用 var liveData: MutableLiveData<String>? = null //初始化 liveData = MutableLiveData() // 设置 observe liveData?.observe... ...查看全部
0
评论

看一遍就理解:动态规划详解 动态规划

王二蛋和他的张大花 发表了文章 • 572 次浏览 • 2021-12-09 10:37 • 来自相关话题

前言 我们刷leetcode的时候,经常会遇到动态规划类型题目。动态规划问题非常非常经典,也很有技巧性,一般大厂都非常喜欢问。今天跟大家一起来学习动态规划的套路,文章如果有不正确的地方,欢迎大家指出哈,感谢感谢~ 什么是动态规划? 动态规划的核心思想 一个例... ...查看全部
0
评论

如何进一步提高flutter内存表现 flutter内存

王二蛋和他的张大花 发表了文章 • 1193 次浏览 • 2021-12-09 10:34 • 来自相关话题

前言 性能稳定性是App的生命,Flutter带了很多创新与机遇,然而团队在享受Flutter带来的收益同时也迎接了很多新事物带来的挑战。 本文就内存优化过程中一些实践经验跟大家做一个分享。 Flutter 上线之后 闲鱼使用一套混合栈管理的方案将Flutte... ...查看全部
0
评论

Flutter动画实现粒子漂浮效果 动画

王二蛋和他的张大花 发表了文章 • 914 次浏览 • 2021-12-09 10:32 • 来自相关话题

要问2019年最火的移动端框架,肯定非Google的Flutter莫属。 本着学习的态度,基本的Dart语法(个人感觉语法风格接近Java+JS)过完之后,开始撸代码练手。 效果图 (这里为了方便录制gif,动画设置的较快;如果将动画的Duration设... ...查看全部
0
评论

GC回收机制与分代回收策略 Android

上帝之眼 发表了文章 • 780 次浏览 • 2021-12-08 22:44 • 来自相关话题

GC回收机制一、前言垃圾回收:Garbage Collection,简写 GC。JVM 中的垃圾回收器会自动回收无用的对象。但是 GC 自动回收的代价是:当这种自动化机制出错,我们就需要深入理解 GC 回收机制,甚至需要对这些 自动化 的技术实施必要的监控与... ...查看全部
0
评论

String还有长度限制?是多少? String

王二蛋和他的张大花 发表了文章 • 620 次浏览 • 2021-12-08 10:35 • 来自相关话题

前言 话说Java中String是有长度限制的,听到这里很多人不禁要问,String还有长度限制?是的有,而且在JVM编译中还有规范,而且有的家人们在面试的时候也遇到了。 String 首先要知道String的长度限制我们就需要知道String是怎么存储字符串... ...查看全部
0
评论

ASM字节码插桩 字节码插桩

王二蛋和他的张大花 发表了文章 • 855 次浏览 • 2021-12-08 10:31 • 来自相关话题

ASM字节码插桩 一、什么是插桩 QQ空间曾经发布的热修复解决方案中利用Javaassist库实现向类的构造函数中插入一段代码解决CLASS_ISPREVERIFIED 问题。包括了Instant Run的实现以及参照Instant Run实现的热修复美团Ro... ...查看全部
0
评论

Flutter 单例的实现 单例

王二蛋和他的张大花 发表了文章 • 701 次浏览 • 2021-12-08 10:30 • 来自相关话题

和谐学习!不急不躁!!我是你们的老朋友小青龙~ 前言 回顾iOS,单例的写法如下: static JXWaitingView *shared; +(JXWaitingView*)sharedInstance{ static dispatch_once_t... ...查看全部
0
评论

Android 图形处理 —— Matrix 原理剖析 Matrix Android

柳天明 发表了文章 • 1138 次浏览 • 2021-12-07 17:03 • 来自相关话题

Matrix 简介 Android 图形库中的 android.graphics.Matrix 是一个 3×3 的 float 矩阵,其主要作用是坐标变换 它的结构大概是这样的 其中每个位置的数值作用和其名称所代表的的含义是一一对应的 MSCALE_X、M... ...查看全部
0
评论

Glide线程池 Glide Android

柳天明 发表了文章 • 1448 次浏览 • 2021-12-07 17:02 • 来自相关话题

hello:大家好我是 小小小小小鹿,一枚菜鸡Android程序猿。最近正在阅读Glide源码,今天我们要研究的部分是Glide 线程池的配置。 本次代码阅读主要有两个目标 弄清楚Glide是如何做线程池配置的 Glide如何进行优先级加载 Glide用来... ...查看全部
0
评论

Kotlin开发中的一些Tips kotlin

柳天明 发表了文章 • 643 次浏览 • 2021-12-07 16:58 • 来自相关话题

作用域函数选择 目前有let、run、with、apply 和 also五个作用域函数。 官方文档有张表来说明它们之间的区别:   总结一下有几点区别: 1、apply和also返回上下文对象。 2、let、run 和with返回lambda 结果。 3、l... ...查看全部
0
评论

一图秒懂CDN原理 CDN

王二蛋和他的张大花 发表了文章 • 793 次浏览 • 2021-12-07 10:53 • 来自相关话题

前些天,线上灰度了一个功能,下午接到一些业务上报国外用户访问时图片无法显示,但是国内访问都是正常,所以怀疑是国外CDN问题导致。 先了说明下现状: 图片保存在阿里OSS中 国内使用了阿里云CDN 国外使用Akamai(全球CDN厂商) 按理说,CDN都有... ...查看全部
0
评论

Flutter: 完成一个图片APP Flutter

王二蛋和他的张大花 发表了文章 • 709 次浏览 • 2021-12-07 10:51 • 来自相关话题

自从 Flutter 推出之后, 一直是备受关注, 有看好的也有不看好的, 作为移动开发人员自然是要尝试一下的(但是它的嵌套写法真的难受), 本着学一个东西, 就一定要动手的态度, 平时又喜欢看一些猫狗的图片, 就想着做一个加载猫狗图片你的 APP, 界面图如... ...查看全部
0
评论

Flutter页面传值的几种方式 Flutter

王二蛋和他的张大花 发表了文章 • 924 次浏览 • 2021-12-07 10:43 • 来自相关话题

今天来聊聊Flutter页面传值的几种方式: InheritWidget Notification Eventbus (当前Flutter版本:2.0.4) InheritWidget 如果看过Provider的源码的同学都知道,Provider跨组件传值... ...查看全部
0
评论

Android组件化第一步壳工程配置 组件化 Android

柳天明 发表了文章 • 1031 次浏览 • 2021-12-06 17:21 • 来自相关话题

传统项目开发中,我们都是通过集成化的方式来搭建项目的架构。什么叫做集成化,我的理解,就是整个project有一个module,根据功能的需要来创建不同的library库,通过gradle的方式来实现依赖。 什么叫做组件化,我的理解就是,一个project中,将... ...查看全部
0
评论

Android开发:实现滑动退出 Fragment + Activity 二合一 手势 Android

柳天明 发表了文章 • 863 次浏览 • 2021-12-06 17:20 • 来自相关话题

前言 能否在不包含侧滑菜单的时候,添加一个侧滑返回,边缘finish当前Fragment? 今天把这项工作完成了,做成了单独的SwipeBackFragment库以及Fragmentation-SwipeBack拓展库 特性: 1、SwipeBackFra... ...查看全部
0
评论

HashMap源码解析 源码分析 HashMap

柳天明 发表了文章 • 641 次浏览 • 2021-12-06 17:18 • 来自相关话题

带着问题看HashMap源码(基于JDK8) HashMap由于涉及到多个数据结构,所以变成了面试题的常客,下面带着以下几个面试常见问题去阅读JDK8中HashMap的源码 HashMap底层数据结构 HashMap的put过程 HashMap的get过程... ...查看全部
0
评论

Flutter2.0快速体验写一个macos应用 Flutter

王二蛋和他的张大花 发表了文章 • 662 次浏览 • 2021-12-06 10:01 • 来自相关话题

1.简介 Flutter2.0将桌面端的开发支持加入到了stable分支中,这对于我一个移动开发小码农,产生了巨大的兴趣(/手动狗头),于是开始了我的第一个macos应用的开发(FTools),简单的说:开发桌面应用真的不要太简单了吧!下面是应用的截图,多图警... ...查看全部
0
评论

Flutter 入门路线图 Flutter

王二蛋和他的张大花 发表了文章 • 739 次浏览 • 2021-12-06 09:59 • 来自相关话题

本文是为那些渴望开始学习 flutter 的人们而准备的,这是一个适合初学者从所有必要资源中逐步学习的路线图。 什么是 flutter Flutter 是 Google 的 UI 工具包,可通过单个代码库为移动设备,web 和桌面系统构建漂亮的,本机编译的应用... ...查看全部
0
评论

Kotlin + Flow 实现的 Android 应用初始化任务启动库 任务

王二蛋和他的张大花 发表了文章 • 676 次浏览 • 2021-12-06 09:55 • 来自相关话题

特性 Kotlin + Flow 实现的 Android 应用初始化任务启动库。 支持模块化,按模块加载任务 可指定工作进程名称,main 表示仅在主进程运行,all 表示在所有进程运行,默认值all 可指定任务仅在工作线程执行 可指定任务仅在调试模式执行 ... ...查看全部
0
评论

Android | 彻底理解 View 的坐标 自定义View Android

柳天明 发表了文章 • 780 次浏览 • 2021-12-03 16:55 • 来自相关话题

Android | 彻底理解 View 的坐标前言如果你是一位从事 Android 原生开发的工程师,那么肯定会对 View 的各种坐标感到迷惑,不理解他们的真正含义。因为曾经我也和你们一样,面对他们时感到陌生和害怕。现在我将这些知识点整理成文,希望可以给大家... ...查看全部
0
评论

Android asm加注解实现自动Log打印 ASM Android

柳天明 发表了文章 • 1070 次浏览 • 2021-12-03 16:54 • 来自相关话题

Android asm加注解实现自动Log打印前言在Android开发中有时候调试问题要给方法加很多的log,很麻烦,所以结合asm用注解的方式来自动在方法中插入log,这样方便开发时候调试。当然通过asm插入的log应该需要包含方法的参数,方法的返回值,有时... ...查看全部
0
评论

Android - 依赖统一管理 gradle groovy Android

柳天明 发表了文章 • 813 次浏览 • 2021-12-03 16:53 • 来自相关话题

#前言 前段时间自己在搭建组件化框架时候遇到了多人协作 Moudle 版本依赖冲突以及重复导包和同一个包导入不同版本的情况,针对这个问题对依赖统一这块做了一次比较详细的学习和总结 目前Android依赖统一管理的方式有以下几种方式,接下来我们一起慢慢分析一下各... ...查看全部
0
评论

Android实战——RecyclerView条目曝光埋点 RecyclerView Android

柳天明 发表了文章 • 822 次浏览 • 2021-12-03 16:51 • 来自相关话题

一、概要 100行代码实现recyclerview条目曝光埋点设计 二、设计思路 条目露出来一半以上视为该条目曝光。 在rv滚动过程中或者数据变更回调OnGlobalLayoutListener时,将符合条件1的条目记录在曝光列表、上传埋点集合里。 滚动状态... ...查看全部
0
评论

聊一聊线程池和Kotlin协程 协程 多线程 kotlin

柳天明 发表了文章 • 1730 次浏览 • 2021-12-02 14:52 • 来自相关话题

目前很多开发组都用上协程来处理异步任务了,但是有的地方协程提供的原生API还是不足以应付,比方说一些SDK提供了传入Executor的接口(以便复用调用者的线程池来执行异步任务),这时候可以用JDK提供的线程池,或者封装一下协程也可以满足需求。 协程提供了Di... ...查看全部
0
评论

Android 编译速度提升黑科技 - RocketX 性能优化 Android

柳天明 发表了文章 • 1343 次浏览 • 2021-12-02 14:51 • 来自相关话题

怎么做编译优化,当时说了个方案,就是编译时将所有的模块依赖修改为 aar,然后每次编译将变动的模块改成源码依赖,同时编译完成再将修改模块上传为 aar,这样可以始终做到仅有最少的模块参与源码编译,从而提升编译速度。 当然说起来轻松,做起来没有那么容易,终于有位... ...查看全部
0
评论

Android CameraX结合LibYUV和GPUImage自定义相机滤镜 camerax Android

柳天明 发表了文章 • 965 次浏览 • 2021-12-02 14:51 • 来自相关话题

前言 之前使用Camera实现了一个自定义相机滤镜(Android自定义相机滤镜 ),但是运行起来有点卡顿,这次用Camerax来实现一样的效果发现很流畅,在此记录一下,也希望能帮到有需要的同学。 实现效果 实现步骤 1.引入依赖库 这里我引入的依赖库有Ca... ...查看全部
0
评论

探究Android属性动画执行过程 动画 Android

柳天明 发表了文章 • 728 次浏览 • 2021-12-02 14:49 • 来自相关话题

1.引言属性动画作为Android动画功能的一个重要组成部分,可以实现很多有趣的动画效果,理解属性动画的执行过程有助于我们更好地使用属性动画去实现需求。本文将从源码的角度去探索属性动画的实现过程,加深大家对其的认知和理解。2.属性动画相关的类2.1 Value... ...查看全部
0
评论

桌面上的Flutter:Electron又多了个对手 Flutter

王二蛋和他的张大花 发表了文章 • 787 次浏览 • 2021-12-02 10:43 • 来自相关话题

从本质上看,Flutter 是一个独立的二进制可执行文件。它不仅改变了移动设备的玩法,在桌面设备上也同样不可小觑。一次编写,可在 Android、iOS、Windows、Mac 和 Linux 上进行原生部署,并通过 AngularDart 将所有的业务逻辑共... ...查看全部
0
评论

高效开发:分享 `extension` 有趣的用法 extension

王二蛋和他的张大花 发表了文章 • 706 次浏览 • 2021-12-02 10:38 • 来自相关话题

前言 extension 可以在不更改类或创建子类的情况下,向类添加扩展功能的一种方式。灵活使用 extension 对基础类进行扩展,对开发效率有显著提升。 举个栗子🌰,对 int 类型扩展 小轰在开发项目中碰到需求:将单位为分的数值转换成单位为元的字符串 ... ...查看全部
0
评论

Android程序员如何从设计角度思考HTTPS https

王二蛋和他的张大花 发表了文章 • 645 次浏览 • 2021-12-02 10:34 • 来自相关话题

typora-root-url: img typora-copy-images-to: img 从设计角度思考HTTPS 我们了解了HTTP协议的内容后,明白HTTP存在很多安全隐患,所以后来推出了安全协议-HTTPS,我们不妨站在设计角度来设计一个安全的HT... ...查看全部