自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

qinxue24的博客

纸上得来终觉浅,绝知此事要躬行。

  • 博客(93)
  • 资源 (3)
  • 收藏
  • 关注

原创 基于 flutter 的即时通信 IM 项目

github 地址 https://github.com/xueqin123/snow-mobile

2021-03-03 15:44:10 987 1

原创 WebRTC搭建流程(五)Android端调试

Android端调试(一)下载Demo编译需要linux+翻墙+16G的源码下载,太坑了,以后编译,直接下载别人编好的应用demo下载地址(二)demo中需要修改所有demo中的域名修改成自己的服务器域名RoomParametersFetcher.java正常来说,打洞服务器需要请求配置服务器,有配置服务器下发到android。这里直接设置了,不做配置服务器了。修改如下,写个...

2018-11-17 12:23:05 1310

原创 WebRTC搭建流程(四)打洞服务器

打洞服务器(一)安装必备软件sudo apt-get install libssl-devsudo apt-get install libsqlite3sudo apt-get install libsqlite3-devsudo apt-get install libpq-devsudo apt-get install libevent-dev(二)git下载打洞服务器仓库cd...

2018-11-17 11:42:10 3055

原创 原 WebRTC搭建流程(三)信令服务器搭建

信令服务器搭建(一)信令服务器安装google 已经go语言实现了一个信令服务器,拷贝出来即可拷贝出来cd ~cp apprtc/src/collider/ . -r //将信令服务器拷贝到当前mulv# cd collider/mkdir src mv co* src修改文件cd src/collidermain/vi main.go修改这句话v...

2018-11-17 11:31:05 2778

原创 WebRTC搭建流程(二)房间服务器搭建

房间服务器搭建安装依赖软件和环境(一)阿里云的源是阿里自己的镜像,不需要再修改源,安装必备软件像 git、解压、nodejs、python 、go语言编译等必备的软件cd ~sudo apt-get updateapt-get install git unzip lrzsz nodejs npm automake autoconf libtool nodejs-legacy python...

2018-11-16 19:56:43 3095

原创 WebRTC搭建流程(一) 准备工作

准备工作工具准备阿里云购买linux ubuntu_14_04服务器 阿里云地址购买域名,并绑定自己的阿里云服务器外网ip,证书申请等(百度一下)在服务器安装nginx并配置域名证书(百度一下)说明准备工作与WebRTC无太大关系,一般网站都需要的基本操作,需要做好。...

2018-11-16 17:55:51 1045

原创 自适应键盘高度

键盘高度无法获取,倒是输入框抖动问题。

2023-10-20 14:43:27 99

原创 顺序发送图片

public class Sender { private static String TAG = "sender"; private PriorityBlockingQueue<ImageInfo> blockingQueue = new PriorityBlockingQueue<ImageInfo>(100, new Comparator<ImageInfo>() { @Override public int comp

2021-12-07 21:43:33 276

原创 查看当前运行activity

adb shell dumpsys activity | grep -i run

2021-03-31 16:53:39 636

原创 WebView 优化,使用本地静态资源加载

拦截 shouldInterceptRequest 使用本地图片代替资源public class TestWebViewActivity extends AppCompatActivity { private WebView webView; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState);

2021-03-23 11:40:21 450

原创 Android Studio 代理设置文件位置

open ~/.gradle/gradle.properties

2021-02-01 16:02:25 750

原创 Glide 圆角 CenterCrop

Glide.with(imageView.context) .load(url) .apply( RequestOptions().transform( CenterCrop(), RoundedCorners(imageView.context.resources.getDimensionPixelSize(R.dimen.dim_c...

2021-01-13 15:10:24 336

原创 高斯模糊

/** * 获取 View 的高斯模糊 Bitmap */ fun gaussianBlur(v: View): BitmapDrawable? { val renderScript = RenderScript.create(v.context) v.setDrawingCacheEnabled(true) val origin = v.getDrawingCache() ?: return null va...

2020-12-22 14:31:02 133

转载 ConstraintLayout 使用技巧

同事的博客 https://juejin.cn/post/6844903877372837902#heading-14

2020-12-15 21:22:20 120

原创 Android 内存回收检测工具

Android 内存回收检测工具仿照 LeakCanary 部分原理,做了简易内存泄漏检测工具,可针对某些拿不准的对象检测,是否被回收。package com.qinxue.realmtest.leakutils;import android.util.Log;import java.lang.ref.ReferenceQueue;import java.lang.ref.WeakR...

2019-12-31 10:42:11 258

原创 Android 获取 View 的高斯模糊 Drawable

Android 获取 View 的高斯模糊 Drawable使用谷歌接口,不兼容 17 以下,需要兼容需处理object RenderScriptUtil { const val RADIUS = 25F //高斯模糊程度 0~25 /** * 获取 View 的高斯模糊 BitmapDrawable */ fun gaussianBlur(v: V...

2019-12-20 11:20:32 1645 1

原创 bytesToHex 求哈希

bytesToHexbyte[] 转 Hax 字符串public class Util { private final static char[] hexArray = "0123456789ABCDEF".toCharArray(); //Original source: https://stackoverflow.com/a/9855338/1389357 pu...

2019-12-20 11:13:31 1860

原创 Mac github clone 速度慢

Mac github clone 速度慢1、拷贝 /etc/host 到桌面2 、修改 桌面的 host 文件 追加 如下151.101.76.249 github.global.ssl.fastly.net192.30.253.112 github.com保存文件3、将 桌面的 host 考回 /etc/ 覆盖原来的文件4、执行sudo dscacheutil -flushca...

2019-12-19 16:53:33 501 2

原创 Android 获取对象地址

#Android 获取对象地址Usafe 是hide ,只能反射调用 ,平时研究可以作为工具查看内存地址变化。public class JavaUtils { public static long addressOf(Object o) { Object[] array = new Object[]{o}; long objectAddress = -1...

2019-12-17 15:13:15 2628 1

原创 Android 9 Http 配置

目录Android 9 Http 配置一、res 新建 xml 文件夹,新建文件 xxx.xml二、配置 ApplicationAndroid 9 Http 配置9不允许直接Http必须使用Https,支持Http需配置如下一、res 新建 xml 文件夹,新建文件 xxx.xml<?xml version="1.0" encoding="utf-8"?><networ...

2019-06-27 11:33:14 860

原创 Google JetPack 之 DataBinding

DataBindingDataBinding 是以声明的方式,将布局中组件与应用程序源数据绑定在一起的框架库。作用:1.将布局组件与源数据绑定,使源数据变化的同时布局组件及时同步更新。2.减少Activity中View的定义(private View view)与初始化(findViewById),让Activity代码更专注于界面的逻辑更新。3.可自定义适配器,实现扩展组件的属性功能。...

2019-06-05 10:46:59 373

原创 Android 线程安全(二)CAS

CASjava中CAS (Compare-and-Swap),比较替换,利用交换指令CMPXCHG来实现,能够保证操作的原子性public final boolean compareAndSet(int expect, int update)参数 (旧值,新值)旧值用于校验是否是期待的值,是就能替换成功,不是则失败,可以继续重试来更新。java中自旋锁就是通过循环替换markwork指向来...

2019-06-02 17:50:40 199

原创 Java 死锁

Java 死锁死锁代码Demo private void testDeadLock() { final Object lockA = new Object(); final Object lockB = new Object(); Thread thread1 = new Thread(new Runnable() { ...

2019-06-02 15:22:59 489

原创 Android 线程安全(二) synchronized

synchronized 关键字一、使用方式1、修饰普通方法,锁对象为类实例2、修饰静态方法,锁对象为类class实例3、修饰代码块,锁对象为括号里的对象 private synchronized void fun(){// 普通方法互斥 } public synchronized static void funStatic(){// 静态方法互斥 ...

2019-05-31 17:51:08 611

原创 Android 线程安全(一) volatile

目录线程安全关键字一、volatile1、可见性2、防止指令重排线程安全关键字一、volatile1、可见性前提:变量保存在主存,如果线程修改变量要先将主存拷贝到线程缓存修改,之后再同步到主存。可见性:是指只能满足一个线程写,多线程读的时候,值正确。原理:1、volatile 声明的变量假设B线程缓存了主存的变量并修改(原子修改不是++这种非原子操作),线程A来读取主存的变量,jv...

2019-05-31 13:47:01 480

原创 Android 线程池(一) FixedThreadPool、CachedThreadPool、SingleThreadPool 分析

目录线程池代码分析一、ThreadPoolExecutor1、构造方法2、测试代码3、源码分析新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowch...

2019-05-30 21:15:23 1597

原创 Activity四种启动模式

singleInstance模式单例模式,仅有一个Activity对象,在独立的任务栈里,启动时直接弹出此Activity,无视其他Activity任务栈逻辑singleTask模式任务栈中仅有一个,如果存在且位于栈顶,则onNewIntent(),如果存在不位于栈顶,则弹出其上面的Activity,保持自己在栈顶singleTop模式如果位于栈顶则不创建新的Activ...

2018-09-14 16:27:12 100

原创 动态展开的RecyclerView

动态展开的RecyclerViewitem有展开需求

2018-09-06 16:04:41 518

原创 仿微信下拉自定义View

仿制微信朋友圈下拉刷新功能自己做了一个,一直没有时间总结,用到的知识点自定义ViewScroller多点触控事件分发下载地址

2018-08-25 21:08:37 661

原创 SQL语句LEFT JOIN,RIGHT JOIN,INNER JOIN 的理解

SQL语句LEFT JOIN,RIGHT JOIN,INNER JOIN 的理解环境MySQL准备工作创建表并插入数据 table_aCREATE TABLE IF NOT EXISTS table_a ( `id` INT UNSIGNED PRIMARY KEY AUTO_INCREMENT , `parent_id` ...

2018-08-01 14:23:05 206

原创 JavaScript模块化seajs中的exoports和module

exports和module区别seajs中声明模块代码define(function (require, exports, module) 前提:导出的方法属性是module,其实exports是module的一个引用。正常情况下,直接将导出的方法,属性等添加在exports上就相当于添加在了module上,没区别。如果讲一个对象赋值给exports之后,expo...

2018-07-20 14:14:16 190

原创 java深拷贝和浅拷贝

java 中的复制浅拷贝和深拷贝之前的区别浅拷贝只会将引用赋值,指向原来的对象地址,拷贝后内存中还是一个对象。深拷贝会复制引用的对象,拷贝后内存有两个对象。(原生clone方法只能复制第一层,如有嵌套对象,则浅拷贝,嵌套的对象,因此需要重写clone自己处理)测试代码javaBeanpublic class User implements Cloneable {...

2018-07-16 13:41:57 128

原创 jquery json中文乱码

jquery数据请求中文乱码以为是前端的代码的问题,结果是SpringMVC配置问题,配置如下即可 &lt;mvc:annotation-driven&gt; &lt;mvc:message-converters&gt; &lt;bean class="org.springframework.http.converter.StringHtt...

2018-07-13 10:42:37 997

原创 Spring下载地址

https://docs.spring.io/spring/docs/

2018-06-13 15:55:55 109

转载 Socket基本原理

网络编程,一切皆Socket一、一些总结Http通信,应用层协议,之前看过okhttp的部分源码,主要是五层的拦截器逻辑,最终的通信方式是封装的一个使用okio读取的socket的输入输出流。应用层的一些报文概念只不过是在socket通信的文件流中添加了type,分页读取流的时候将信息区分开读取,这样就完成了http通信。linux 设计思想一切皆文件,也是socket的思想,作为一个...

2018-05-27 13:35:23 1124

转载 Android 中的 Handler 同步分割栏

Handler异步实现控制Message的处理的,异步线程可以在Handler中设置异步卡子,设置好了以后,当前Handler的同步Message都不再执行,直到异步线程将卡子去掉。一、postSyncBarrier 设置同步卡方法是隐藏的需要反射获取API版本&lt;23方法位于Looper中,API版本&gt;23位于 MessageQueue中作用是为Handler设置卡子...

2018-05-21 19:06:47 677

转载 androidstudio 使用git添加忽略文件

androidstudio中忽略文件配置android很多git仓库不需要的文件不需要提交,只需要设置忽略文件。进入项目目录,bash命令行执行touch .gitignore 生成忽略文件vim .gitignore 修改忽略配置文件 -到 生成网站选择androidstudio生成忽略配置内容,生成好以后,复制到.gitignore就可以了。...

2018-05-16 12:29:02 1111

转载 Gif图像压缩

看到大触的文章Mark一下笔记:起初我想,Gif图像压缩,每一帧都压缩分辨率就好了,看了大神的博客,发现没有这么简单,链接如下:总结:gif为了减小体积,本来就是经过压缩的图像了,gif大小限制压力来自调色板,甚至可能是处理过每一帧与前一帧的图像变化,做到尽可能携带少的信息了。再压缩就很难了,抽帧算是压缩吗?如果算可以算压缩了。gif好像可以调节图像文件的大小,分辨率降低,容量压缩不明显。大神博客...

2018-05-07 18:11:04 3652

原创 android中java代码抓取网页内容(微信图文)

android中有是需要抓取网络Html页面中的一些基础数据,title,decription等等,用来展示网页基本信息。github上开源项目https://github.com/LeonardoCardoso/Android-Link-Preview原理就是将HTML加载下来,处理成字符串,使用正则表达式,查找&lt;meta&gt;标签,并使用HashMap分别保存起来。自己写了个demo。...

2018-05-07 14:37:28 976

转载 java ++运算符

private void test() { for (int i = 0; i &lt; 10; i++) { int a = 0; int b = a++; Log.i(TAG, "b = " + b); } }这里输出值都是0,与C不一是致的。C会返回自己增加后的值,java...

2018-05-06 15:48:17 293

自适应键盘高度,键盘脚手架

自适应键盘高度,键盘脚手架

2023-10-20

callstatus.min.js

一个js资源,可能下载不到,我这里自己请求后上传的资源

2018-11-16

CustomStyle

自定义View 自定义Style

2017-05-29

CustomAttr

自定义属性

2017-05-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除