注册
环信即时通讯云

环信即时通讯云

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

环信开发文档

环信FAQ

环信FAQ

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

RTE开发者社区

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

技术讨论区

技术交流、答疑
资源下载

资源下载

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

iOS Library

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

Android Library

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

做一个短链接系统需要考虑这么多 系统设计

上帝之眼 发表了文章 • 631 次浏览 • 2021-12-02 09:36 • 来自相关话题

什么是短链接短链接顾名思义,就是一个比较短的链接(我好像说了个废话),我们平时看到的链接可能长这样:mp.weixin.qq.com/s?biz=MzU5M…又臭又长有没有(没错,这是我的WX公众号链接,可以关注一下),那如果我们需要将某个链接发在某个文章或者... ...查看全部
0
评论

300行代码实现循环滚动控件 自定义View Android

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

序言在业务中需要显示一个循环滚动的控件,内容可以循环滚动,可以自动滚动,手指触摸的时候会暂停。 由于目前的方案都是基于ViewPager或者RecycleView的。还需要实现Adapter,需要拦截各种事件。使用成本比较高。于是我就自定义了一个控件实现该功能... ...查看全部
0
评论

synchronized 的实现原理 多线程 Android

柳天明 发表了文章 • 845 次浏览 • 2021-12-01 13:59 • 来自相关话题

synchronized 的使用 锁代码块(锁对象可指定,可为this、XXX.class、全局变量) 锁普通方法(锁对象是this,即该类实例本身) 锁静态方法(锁对象是该类,即XXX.class) 锁代码块 public class Sync { ... ...查看全部
0
评论

Jetpack-Lifecycle jetpack Android

柳天明 发表了文章 • 642 次浏览 • 2021-12-01 13:57 • 来自相关话题

1.AndroidX 的ComponentActivity 实现了LifecycleOwner接口,ComponentActivity 的子类会重写LifecycleOwner的接口方法,以便得到我们使用的lifecycle对象,lifecycle 是在Com... ...查看全部
0
评论

Glide数据输入输出 Glide Android

柳天明 发表了文章 • 750 次浏览 • 2021-12-01 13:56 • 来自相关话题

基础概念 在正式开始之前先明确一些概念 Glide输入: 我们日常在使用Glide的时候,通过load可以加载不同的资源类型例如文件,字符串等待。 我们把load的不同类型称为不同的输入。 Glide输出: Glide RequestManager提供了许多... ...查看全部
0
评论

大厂面试Kafka,一定会问到的幂等性 kafka

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

01 幂等性如此重要 Kafka作为分布式MQ,大量用于分布式系统中,如消息推送系统、业务平台系统(如结算平台),就拿结算来说,业务方作为上游把数据打到结算平台,如果一份数据被计算、处理了多次,产生的后果将会特别严重。 02 哪些因素影响幂等性... ...查看全部
0
评论

Toast必须在UI(主)线程使用? toast

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

背景 依稀记得,从最开始干Android这一行就经常听到有人说:toast(吐司)不能在子线程调用显示,只能在UI(主)线程调用展示。 非常惭愧的是,我之前也这么认为,并且这个问题也一直没有深究。 直至前两天我的朋友 “林小海” 同学说toast不能在子线程中... ...查看全部
0
评论

手把手教你用Flutter搭建属于自己的个人博客 Flutter

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

Flutter 2.0以来已经稳定支持web的开发,现在来教大家使用Flutter搭建一个个人的博客网站,使用Github提供的Actions、gh-pages服务,毕竟一时白票一时爽,一直白嫖一直爽。 1. 使用AndoridStuido创建一个Flutte... ...查看全部
0
评论

Android 关键字高亮 textview Android

柳天明 发表了文章 • 923 次浏览 • 2021-11-30 13:55 • 来自相关话题

前言项目中经常会遇到需要对关键字加特殊色值显示,不管是搜索内容还是列表关键字展示,对于特殊文字或者词组高亮是一种很常见的需求,Android 没有自带这样的工具或者组件提供,但是我们可以自己实现一个这样的工具类,用到的地方直接调用就好了。文字高亮所谓文字高亮,... ...查看全部
0
评论

聊一聊Android开发利器之adb adb Android

柳天明 发表了文章 • 1291 次浏览 • 2021-11-30 13:53 • 来自相关话题

学无止境,有一技旁身,至少不至于孤陋寡闻。adb的全称为Android Debug Bridge,通过adb可以方便我们调试Android程序。作为移动端开发相关的同学,掌握所需要的adb操作命令是非常必须的,就把平时工作中用得相对比较多的adb命令做个梳理。... ...查看全部
0
评论

必学必知的自定义View基础 自定义View Android

柳天明 发表了文章 • 668 次浏览 • 2021-11-29 13:50 • 来自相关话题

前言自定义View原理是Android开发者必须了解的基础;在了解自定义View之前,你需要有一定的知识储备;本文将全面解析关于自定义View中的所有知识基础。目录1. 视图定义即日常说的View,具体表现为显示在屏幕上的各种视图控件,如TextView、Li... ...查看全部
0
评论

CoordinatorLayout与AppBarLayout。置顶悬停,二级悬停,类似京东、淘宝等二级悬停。 AppBarLayout CoordinatorLayout Room

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

类似京东、淘宝等二级悬停。 参考+实践 一、惯例先上效果图 二、GitHub 代码地址,欢迎指正https://github.com/MNXP/SlideTop 三、XML布局主要用到的控件 1、PullRefreshLayout (借用这位大神的ht... ...查看全部
0
评论

HashMap有何特别之处,为什么java面试从不缺席? HashMap

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

涉及知识点 看过java面试经验分享的小伙伴或者经历过准备过校招面试的小伙伴应该都曾经被Hashmap给支配过,即使是社招HashMap也仍然是高频考点,那么究竟为什么大家都喜欢问HashMap,其中包含了哪些知识点? 首先从生产的角度来说,HashMap是... ...查看全部
0
评论

为什么 JakeWharton 建议:App 只要用到一个 Activity ? Activity

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

安卓开发大神级人物 JakeWharton 前不久在接受采访时提出一个颇具争议而又没有给出原因的建议:一个 App 只需要一个 Activity ,你可以使用 Fragments,只是别用 Fragments 回退栈。 针对这一言论,有关 JakeWharto... ...查看全部
0
评论

termux 安卓神器 termux

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

今年春节在家的时候,手头没有电脑,但是想用电脑写下代码,于是乎我找到这一款termux神器,可以把安卓手机当作一台小型的服务器来使用。利用5年前已经淘汰的安卓手机,插上适配器,这样我就可以无休止的跑我的脚本了。termux 安装在termux官网上看到最新的版... ...查看全部
0
评论

flutter 线上apm监控 远程日志 emas_tlog Flutter apm

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

emas_tlog ali emas tlog 阿里巴巴flutter版本 远程日志 TLog 介绍 远程日志服务提供远程手机日志拉取功能,解决移动App线上异常排查困难的问题。 远程日志服务支持Android/iOS应用类型。 产品架构 1.移动App集成... ...查看全部
0
评论

你怎么总是能写出两三千行的controller类? controller

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

你一定经常见到一个两三千行的 controller 类,类之所以发展成如此庞大,有如下原因: 长函数太多 类里面有特别多的字段和函数 量变引起质变,可能每个函数都很短小,但数量太多 1 程序的modularity 你思考过为什么你不会把all code写到... ...查看全部
0
评论

大红大紫的 Golang 真的是后端开发中的万能药吗? Golang

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

前言 城外的人想进去,城里的人想出来。-- 钱钟书《围城》 随着容器编排(Container Orchestration)、微服务(Micro Services)、云技术(Cloud Technology)等在 IT 行业不断盛行,2009 年诞生于 Go... ...查看全部
0
评论

写给前端工程师的 Flutter 教程 Flutter

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

最爱折腾的就是前端工程师了,从 jQuery 折腾到 AngularJs,再折腾到 Vue、React。 最爱跨端的也是前端工程师,从 phonegap,折腾到 React Native,这不又折腾到了 Flutter。 图啥? 低成本地为用户带来更优秀的用户... ...查看全部
0
评论

Flutter | 求求你们了,切换 Widget 的时候加上动画吧 Flutter

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

平时我们在切换 Widget 的时候是怎样的呢?有没有动画效果?是不是直接改变了一个 Widget?类似于这样的:如果是的话,那么今天所说的 Widget,绝对符合你的口味。那如何在 Flutter 当中切换 Widget 的时候加上特效?完成这样的效果?An... ...查看全部
0
评论

苍老师的 "码" 是怎么打上的 打码

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

--OpenCV初体验,Swift和C++混编 文档更新说明 2017年10月27日 v1.0 初稿 2017年10月28日 v1.1 添加Objective-C++编译方法 ... ...查看全部
0
评论

Jetpack Compose 动画初步了解和使用 jetpack Android

柳天明 发表了文章 • 918 次浏览 • 2021-11-25 11:47 • 来自相关话题

Animatable compose 使用 Animatable 来实现动画效果,Animatable 可以理解为一个可以作为动画属性的 Value 持有者。当它持有的 Value 通过 animateTo 更新时,可以自动以动画的形式对这一过程进行演变。与传... ...查看全部
0
评论

kotlin 进阶教程:核心概念 kotlin

柳天明 发表了文章 • 782 次浏览 • 2021-11-25 11:46 • 来自相关话题

1 空安全 // ? 操作符,?: Elvis 操作符 val length = b?.length ?: -1 // 安全类型转换 val code = res.code as? Int // StringsKt val code = res.code?.t... ...查看全部
0
评论

别再问我 new 字符串创建了几个对象了!我来证明给你看! Java

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

我想所有 Java 程序员都曾被这个 new String 的问题困扰过,这是一道高频的 Java 面试题,但可惜的是网上众说纷纭,竟然找不到标准的答案。有人说创建了 1 个对象,也有人说创建了 2 个对象,还有人说可能创建了 1 个或 2 个对象,但谁都没有... ...查看全部
0
评论

一步一步搭建Flutter开发架子-Tabbar Flutter

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

一点点搭建一个架构,架构对于开发比较重要,有固定的模式,第一不容易产生bug,并且有利于对于项目以及开发架构的理解。 对于一个app,常见的架构一般是底部有Tabbar形式,或者采用抽屉的形式,底部Tabbar大部分app都是平铺的,中间有一块凸出来的形式。普... ...查看全部
0
评论

一步一步搭建Flutter开发架子-国际化,路由,本地化,响应式 Flutter

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

接上一篇文章,这篇文章主要介绍,路由管理,国际化管理,响应式管理方法,数据持久化管理。还是先看看大神么们都是怎么写的,从中学习一下。看到又一个比较好用的库getx,方便简介,基本上都包含今天要封装的内容,那就用起来吧。ps:有人可能会有想法说是应该自己写,总用... ...查看全部
0
评论

通过协程简化Activity之间的通信 协程 kotlin

柳天明 发表了文章 • 694 次浏览 • 2021-11-23 17:55 • 来自相关话题

假设我们有这样一个常用的场景:有两个Activity,第一个Activity展示一段文本点击“编辑”按钮启动第二个Activity,并把这段文本当做参数传递到第二个Activity在第二个Activity编辑这个字符串编辑完成后点击保存将结果返回到第一个Act... ...查看全部
0
评论

屏幕旋转切换机制详解 Android

柳天明 发表了文章 • 1021 次浏览 • 2021-11-23 17:54 • 来自相关话题

前言 屏幕旋转的机制; 默认情况下,当用户手机的重力感应器打开后,旋转屏幕方向,会导致当前activity发生onDestroy-> onCreate,这样会重新构造当前activity和界面布局,如果在Camera界面,则表现为卡顿或者黑屏一段时间; 今天... ...查看全部
0
评论

为什么 MySQL 不推荐使用 join? MySQL

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

 1. 对于 mysql,不推荐使用子查询和 join 是因为本身 join 的效率就是硬伤,一旦数据量很大效率就很难保证,强烈推荐分别根据索引 单表取数据,然后在程序里面做 join,merge 数据。   2. 子查询就更别用了,效率太差,执行子查询时,M... ...查看全部
0
评论

我的Android开发之旅(一):BaseActivity的浅入之简单封装 Toolbar BaseActivity

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

为什么要写BaseAcivity 我们都知道在做Android应用开发的时候都需要创建一个Activity,但很多时候我们的程序有多个界面并且每个界面都有相似的内容(例如:Toolbar、DrawerLayout)和后台的操作有共同的方法,这个时候我们写一个B... ...查看全部
0
评论

Android 包大小优化实践 优化

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

android减少包大小是非常必要的,在性能,转换率等等都有益处,而常用的包大小优化Google已经给出了一些方案,再加上市面上的一些美团方案,微信方案、抖音方案等等,下面就说一下我们在包大小优化做的努力。 1、使用AAB模式 google play现在强制所... ...查看全部
0
评论

面试官:一千万数据,怎么快速查询? sql

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

前言 面试官: 来说说,一千万的数据,你是怎么查询的?B哥:直接分页查询,使用limit分页。面试官:有实操过吗?B哥:肯定有呀 此刻献上一首《凉凉》 也许有些人没遇过上千万数据量的表,也不清楚查询上千万数据量的时候会发生什么。 今天就来带大家实操一下,这次... ...查看全部
0
评论

Android 基础架构组面试题 | 面试 面试题

柳天明 发表了文章 • 850 次浏览 • 2021-11-22 11:24 • 来自相关话题

SDK相关面试的时候我觉得哦,这些sdk有任意其实你研究的比较深入就行了,应该能在面试中表现的很好了。还有就是个人建议最好还是在单一方向研究的更深入一点,别的只要大概知道干什么的就行了。配置中心以及灰度测试app必备工具之一,配置中心主要负责的就是动态化的配置... ...查看全部
0
评论

你用过HandlerThread么? Android HandlerThread

柳天明 发表了文章 • 770 次浏览 • 2021-11-22 11:22 • 来自相关话题

前言我们都用过Handler,也很熟悉怎么使用Handler,肯定也知道Handler使用过程中的注意事项,那就是内存泄漏,也知道大部分内存泄漏都是因为静态变量引用的问题。Handler是一个内部类,非static内部类或者匿名内部类都会持有外部类的引用。如果... ...查看全部
0
评论

android 展示PDF文件 PDF

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

 注:此方式展示pdf文件会增加apk大小3-4m左右 建议使用x5的webview进行加载pdf文件(可扩展) 1. 加入此依赖 implementation 'com.github.barteksc:android-pdf-viewer:3.... ...查看全部
0
评论

进来看看是不是你想要的效果,Android吸顶效果,并有着ViewPager左右切换 ViewPager

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

老规矩,先上图,看看是不是你想要的 美团: 来一个图形分析 接下来我要写一个简单示例,先分析一下布局,见下图,最外层是NestedScrollView,之后嵌套一个LinearLayout头部,中间TabLayout选择器,底部一个ViewPager Vi... ...查看全部
0
评论

图解:什么是AVL树? AVL树

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

引子上一次我给大家介绍了什么是二叉搜索树,但是由于二叉搜索树查询效率的不稳定性,所以很少运用在实际的场景中,所以我们伟大的前人就对二叉搜索树进行了改良,发明了AVL树。AVL树是一种自平衡二叉搜索树,因为AVL树任意节点的左右子树高度差的绝对值不超过1,所以A... ...查看全部
0
评论

恕我直言,我怀疑你并不会用 Java 枚举 枚举

王二蛋和他的张大花 发表了文章 • 645 次浏览 • 2021-11-19 14:30 • 来自相关话题

开门见山地说吧,enum(枚举)是 Java 1.5 时引入的关键字,它表示一种特殊类型的类,默认继承自 java.lang.Enum。 为了证明这一点,我们来新建一个枚举 PlayerType: public enum PlayerType { TE... ...查看全部
0
评论

程序员如何优雅的挣零花钱? 挣零花钱

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

前言虽然程序员有女朋友的不多(误),但是开销往往都不小。 VPS、域名、Mac上那一堆的收费软件、还有Apple每年更新的那些设备,经常都是肾不够用的节奏。 幸好作为程序员,我们有更多挣钱的姿势。 有同学该嚷了:不就是做私单嘛。 ... ...查看全部
0
评论

协程调度器详解 协程 kotlin

柳天明 发表了文章 • 957 次浏览 • 2021-11-19 11:29 • 来自相关话题

协程和线程的差异目的差异线程的目的是提高CPU资源使用率, 使多个任务得以并行的运行,是为了服务于机器的.协程的目的是为了让多个任务之间更好的协作,主要体现在代码逻辑上,是为了服务开发者 (能提升资源的利用率, 但并不是原始目的)调度差异线程的调度是系统完成的... ...查看全部
0
评论

Android C++系列:Linux文件IO操作 android NDK

柳天明 发表了文章 • 842 次浏览 • 2021-11-19 11:25 • 来自相关话题

1.1 read/writeread函数从打开的设备或文件中读取数据。#include ssize_t read(int fd, void *buf, size_t count); //返回值:成功返回读取的字节数,出错返回-1并设置errno,如果在调r... ...查看全部
0
评论

Android App 卡顿分析 卡顿

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

Android App 反应卡顿,从技术上将就是UI 渲染慢。 UI渲染是从您的应用程序生成一个框架并将其显示在屏幕上的行为。 为了确保用户与您的应用程序的交互顺利,您的应用程序应该在16ms内渲染帧数达到每秒60帧(为什么60fps?)。 如果您的应用程序因... ...查看全部
0
评论

Android组件化基础 组件化

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

前言 公司包含三大业务线,每条业务线都有独立的app。功能模块难免会有重合~举个栗子,直播功能本来只在业务线A使用,但是由于业务拓展,现在业务线B和C也需要使用直播功能。这时候就有必要将直播功能做成一个独立的直播组件供三条业务线使用。 构思 既然要将直播做成组... ...查看全部
0
评论

Android加载长图方案 长图

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

背景介绍 在某些特定场景下,我们需要考虑加载长图的需求,比如加载一幅《清明上河图》,这个好像有点过分了,那就加载1/2的《清明上河图》吧... 那TMD还不是一样道理。 言归正传说一下我这边遇到的情况,之前有图片或大图的模块是划分为H5来实现的,现在需求变更划... ...查看全部
0
评论

Android自定义view,实现电子签名 自定义View

柳天明 发表了文章 • 785 次浏览 • 2021-11-16 15:27 • 来自相关话题

首先new一个类继承于Viewpublic class SignatureView extends View 自定义view,采用画笔绘制一张图片 定义一个画笔滑动的宽度 还需要对画笔进行跟踪,以便内容区域可以容纳笔划private static final... ...查看全部
0
评论

滴滴DoKit For Flutter正式开源,还是熟悉的"配方" DoKit

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

社区的小伙伴们,大家好啊,艰难的2020已经过去,随着2021的到来,在新的一年里希望大家都能够需求不变更、准点上下班、代码0 Bug。同时我们DoKit团队也给大家准备了一份特殊的“新年礼物”,没错它就是DoKit For Flutter,它来啦,它带着熟悉... ...查看全部
0
评论

什么?你还不会用位运算来操作状态? 位运算

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

回顾首先来回顾一下位运算,什么是位运算呢?位运算就是直接对整数在内存中的二进制位进行操作。在 Java 语言中,位运算有如下这些:左移(<<)。右移(>>)。无符号右移(>>>)。与(&)。或(|)。非(~)。... ...查看全部
0
评论

Android 多渠道打包看这一篇就够了 多渠道

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

Android 多渠道打包看这一篇就够了 本文三个流程 一、多渠道配置 1、多渠道配置 2、不同渠道不同签名配置 3、不同渠道不同资源文件配置 4、不同渠道不同依赖配置 二、注意事项 三、打包 1、命令行打包 2、IDE 打包 多渠道配置(2 种方式) 1、可... ...查看全部
0
评论

如何优雅的在java中统计代码块耗时 代码耗时

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

在我们的实际开发中,多多少少会遇到统计一段代码片段的耗时的情况,我们一般的写法如下 long start = System.currentTimeMillis(); try { // .... 具体的代码段 } finally { System... ...查看全部
0
评论

Flutter -项目架构篇 架构

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

介绍 多姿的青春,迷茫的青春,懵懂的青春,落泪的青春,责任的青春,青春的婀娜,青春的美妙全部撒播在了沿途的风景之中,迷茫,酸楚,欢声笑语在记忆的天空中承载着梦想而飞翔,青春才成了心中的永恒 本文带你一步一步搭建flutter项目架构,方便你项目直接集成使用... ...查看全部