- 博客(406)
- 资源 (33)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android硬编码录制视频实时添加水印
记录一下 ,在使用硬编码录制视频 ,实时的去添加水印 ;下面是效果图:主要的流程是:先将视频流转为 bitmap 图片 ,再将图片添加上想要的水印 ,最后再将添加完水印的 bitmap 转化为 NV21 的视频流 ;下面是 GitHub 的下载链接:https://github.com/wuqingsen/ToMp4Wu下面是关键的代码: /** * 将拿到的预览帧数据转为bitmap添加水印 再讲bitmap转为帧数据 * @param dst 预览的帧数据
2020-12-14 13:40:10
3087
12
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android音视频开发:录制视频 + 语音识别 + 人脸识别
最近两个月在搞 Android 音视频相关方面的需求,下面是记录一次音视频开发的实操记录;最下面有demo;移动端具体的需求是这个样子的:录制视频 + 同时语音识别 + 同时人脸识别 + 同时语音合成;视频时长大概是一个小时,不能压缩处理。OK,需求出来我是崩溃的,Android 原生不支持录制视频的同时去实现语音识别,而 iOS 原生支持,这就加长了 Android ...
2020-01-06 15:44:36
3213
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android冷启动-实现APP秒开
我们第一次打开 APP 的时候,如果没有做过处理,会经历一段白屏的时间,然后再开始看到我们的主页面;如下图所示:白屏的时间根据手机硬件配置来决定,一般在 500 - 2000 毫秒之间。什么是冷启动?冷启动就是,当 APP 进程被杀死,第一次打开该APP 启动,它的启动过程就是冷启动。冷启动的缺点是什么?在没有做任何处理的情况下,当我们打开 APP ,屏幕...
2019-11-20 18:12:28
2030
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android Charles抓包
下面是 Mac 使用 Charles 抓包工具抓包;1.下载安装 Charles打开下面网址:https://xclient.info/s/charles.html点击下载即可,如果打不开,搜索xclient.info ,打开后搜索 Charles 即可;我下载版本为:4.2.8;下载完毕,会提示输入密码,密码为: xclient.info打...
2019-11-08 16:43:28
3163
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android WIFI开发:获取wifi列表,连接指定wifi,获取wifi加密方式,监听wifi网络变化等
下面是 Android 开发中 WiFi 的常用配置,如:获取当前 WiFi ,扫描 WiFi 获取列表,连接指定 WiFi ,监听网络变化等等。下面是效果图:GitHub 下载地址:https://github.com/wuqingsen/WifiDemoWucsdn 下载地址 :https://download.csdn.net/download/wuqingsen1/1...
2019-09-06 16:11:15
8456
3
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android图片的三级缓存
图片的三级缓存目的主要目的是为了节省流量、加快加载速度;每个 app 都会有大量的网络图片存在,当我们不做处理,每次打开 app 都去加载大量网络图片时,会耗费大量的流量,当网速不好时加载速度很慢;三级缓存介绍以及优点三级缓存即:内存缓存、本地缓存和网络缓存内存缓存:加载速度快、不耗费流量、优先加载本地缓存:加载速度快、不耗费流量、次级加载网络缓存:加载速度...
2019-04-02 16:03:02
586
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android 下拉刷新上拉加载可以左右滑动
下面是下拉刷新上拉加载可以左右滑动的实例,下面是效果图:GitHub 下载地址:https://github.com/wuqingsen/MySlidingNestedCSDN 下载地址:https://download.csdn.net/download/wuqingsen1/11072595下面就来看下如何实现的;首先看 xml 文件中的代码:<Relat...
2019-03-29 17:24:05
782
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 SpannableStringBuilder从简单到复杂的使用
很多 APP 都有下面的效果:这样的效果就是用SpannableStringBuilder 实现的,下面就了解SpannableStringBuilder 的简单使用以及实现上面的效果。SpannableString、SpannableStringBuilder与String的关系SpannableString、SpannableStringBuilder 基本上与 St...
2019-03-15 17:31:28
11700
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 仿抖音列表
下面是自己写的防抖音列表,包括:可上下滑动播放视频 播放完当前视频,自动播放下一个 仿抖音评论列表 节操播放器的简单使用下面是两张效果图: 下面是下载地址:GitHub 下载地址:https://github.com/wuqingsen/DouYinWuCSDN 下载地址:https://download.csdn.net/download/wuqings...
2019-03-08 16:31:23
2610
2
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android屏幕简单适配
Android 常用手机屏幕大小有 4.5、 4.7、 5.0、 5.5、 5.7、 6.0 等。常用的屏幕分辨率有 320x480、480x800、720x1280、1080x1920。面对多种多样大小的手机,屏幕的适配也成为了一个重要的问题。下面就分享一波简单的屏幕适配,下面直接看一个简单的例子;上面是一个设计图,可以看出图片大小为 165 dp,在写程序时,将图片大小设置为固定的...
2019-01-22 18:15:14
452
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android内存泄漏
内存泄漏:当一个无用的对象仍然被其它对象所持有引用,从而造成该对象无法被系统回收,以致该对象在堆中所占用的内存单元无法被释放而造成内存空间浪费;这就是内存泄漏。 单例造成内存泄漏在自定义工具类时,经常会使用到单例模式,也经常这么写代码:public class Utils { private static Utils utils; private Context ...
2018-12-18 16:14:27
823
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 View的绘制流程简单理解
在 Android 中,我们会用到很多控件(如:TextView 等)、容器(如:LinearLayout 等);其中控件都是继承于 View ;而容器都是继承于 ViewGroup ;那么这些控件、容器是如何显示到屏幕上的呢?无论是控件还是容器都要经过三个最主要的过程,从而显示到屏幕上的;即:onMeasure()、onLayout 和 onDraw;1. onMeasure()...
2018-12-10 18:14:32
413
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 ViewPager不设置预加载和Fragment只加载一次
今日写了一个 ViewPager 和 Fragment 配合使用,达到 ViewPager 不设置预加载(也就是一次只加载一个)和 Fragment 懒加载(也就是只加载一次)。通俗的说就是滑动或点击哪个便加载哪个,并且加载过的不再加载。下面是效果图:下面是下载地址:GitHub 下载地址:https://github.com/wuqingsen/FragmentLazyCSDN ...
2018-11-26 15:34:04
6424
4
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android AsyncTask
多线程的应用在Android开发中是非常常见的,常用方法主要有:1.继承Thread类(继承 Thread 类和实现 Runnable 接口的区别)2.实现 Runnable 接口(继承 Thread 类和实现 Runnable 接口的区别)3.Handler4.AsyncTask(异步任务)5.HandlerThread今天就来看一下关于 AsyncTask(异步任务)的...
2018-10-08 16:51:59
341
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 多线程应用的常用方法
多线程的应用在Android开发中是非常常见的,常用方法主要有:1.继承Thread类(继承 Thread 类和实现 Runnable 接口的区别)2.实现 Runnable 接口(继承 Thread 类和实现 Runnable 接口的区别)3.Handler4.AsymcTask(异步任务)5.HandlerThread...
2018-09-29 13:52:35
357
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android 面试题
1. Android 五大布局Android 五大布局2. Android 四大组件之一Activity 的理解Activity 的介绍,四种状态以及生命周期详细介绍3. Activity 的四种启动模式Activity 的四种启动模式的介绍以及简单示例4. 如何安全退出已调用多个 Activity 的 Application安全退出已调用多个Activity的App...
2018-09-26 14:18:31
363
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android Handler
多线程的应用在Android开发中是非常常见的,常用方法主要有:1.继承Thread类(继承 Thread 类和实现 Runnable 接口的区别)2.实现 Runnable 接口(继承 Thread 类和实现 Runnable 接口的区别)3.Handler4.AsyncTask(异步任务)5.HandlerThread下面就来看一下关于Handler 的理解和用法:...
2018-09-14 16:51:21
1413
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android 窗口机制
1.熟悉窗口结构图:2.对 PhoneWindow,DecorView,WindowManager,ViewRootImpl 等关键词理解。2.1 PhoneWindow每个 Activity 都有一个 Window 对象的实例,这个实例实际上是 PhoneWindow 类型的,由此看出:PhoneWindow 是 Window 的子类。知识:每一个Activity都有一个 P...
2018-09-06 18:19:28
939
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android 布局优化处理(含 include、Viewstub、merge)
下面是一位才疏学浅的博主对布局优化的理解和认识(更多好内容戳下面:https://blog.csdn.net/wuqingsen1):1.下面先讲解 include、Viewstub、merge 的基本用法,如果了解,可以直接看下面的布局优化。1.1 include 用法(一般用于复用的布局,比如每个界面的标题等,从而实现布局模块化)。 代码下载:https://download...
2018-08-31 11:58:50
513
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Android 事件分发机制
在结合资料和项目开发过程中遇到的问题(更多好内容戳下面:https://blog.csdn.net/wuqingsen1),下面是本人对 Android 事件分发机制的了解:1. 事件分发的对象是谁? 答:点击事件( Touch 事件 )。Touch 事件的相关细节(发生触摸的位置、时间等)被封装成 MotionEvent 对象。2.事件的类型分为几种? 答:分为四种,具体...
2018-08-29 17:36:36
546
1
原创 微信小程序开发2常用组件与小程序发布
开发中常用的组件,所有组件可以看微信开发文档:常用的6个:view,scroll-view,swiper && swiper-item,text && rich-text,button,image。
2023-02-08 21:15:00
527
1
原创 微信小程序开发1初识
project.config.json 项目的配置文件,记录个性化设置:setting(编译配置),projectname(项目名称),appid(小程序账号ID)。打开开发者工具,选择新建+一个项目,输入名称,和项目路径,再输入复制的AppID(小程序ID),选择不使用云端,保存即可。app.json 小程序的公共配置,设置UI,决定页面文件的路径,设置网络超时时间,设置多tab等。app.js 整个项目的逻辑文件,注册小程序实例,绑定生命周期回调函数,错误监听等。
2023-02-07 22:00:00
596
原创 Android SM4加密与java中的url进行编码和解码
项目需求要用SM4加密,搜了搜用的多,但有用的少,记录一下。可以加密为16进制或base64,按个人需求。然后再下载这个jar包到本地,引入。
2022-10-26 09:52:43
1454
原创 APP之间的跳转和传值
写的时候要写一个中间的 activity ,在此页面中判断具体逻辑,进入登录页面或者进入首页等。这是因为每次接受传值的 activity 必须要是新建的。AndroidManifest.xml 设置。AndroidManifest.xml 设置。遇到问题,每次跳转不一定都能取到传来的值。A 跳转至 B 并传值;这个不会影响用户体验。
2022-10-26 09:28:06
447
原创 Mac -bash: ls: command not found和无法运行.sh脚本
升级后运行.sh报错:unable to execute xxx.sh : Operation not permitted。但重启终端就得重新输入。再执行 ./test.sh。
2022-09-21 16:45:34
882
原创 Android-OpenGL坐标系
Android 手机中的坐标系(竖屏与横屏):OpenGL 顶点坐标系(竖屏与横屏):OpenGL 纹理坐标系(竖屏与横屏):
2022-08-09 14:20:50
742
原创 Android音视频学习思路整理
音视频学习有好多文章,但是很多都是非常杂乱,整理了一下网上学习的比较有用的文章,学习思路可以按这个链接下来学习:【Android 音视频开发打怪升级:音视频硬解码篇】一、音视频基础知识 - 掘金整理的很到位,包括基础,OpenGL,ffmpeg。就是代码是 kotlin,可以花一天时间入个门,代码就能看懂。实在看不懂的,可以按照他的目录作为学习思路,百度文章来看。可以看上面文章中的概念,然后代码看下面的整理用 java 来学习音视频。关于摄像头学习参考这个,语言是java,这里面
2022-05-26 10:38:04
839
1
原创 Kotlin学习三:页面的常用写法
这里就记录写法控件初始化与点击事件 val text: TextView = findViewById(R.id.text); text.setOnClickListener { Toast.makeText(this, "点击", Toast.LENGTH_LONG).show() }Intent 使用与传值第一个类传值: val text: TextView = findViewById(R.
2022-05-25 09:50:22
272
原创 Kotlin学习三:集合与Lambda
List 创建于遍历创建一个只能读的集合,不能添加、修改或删除集合内容: val myList = listOf("A", "B", "C") for (i in 0 until myList.size) { Log.w("列表", "" + myList.get(i)) }创建一个可以修改的集合: val myList = mutableListOf("A", "B", "C") myL
2022-05-17 21:45:00
212
原创 Kotlin学习二:类与对象
类创建类 MyUtils,里面有一个值和获取的方法:class MyUtils { var a = 0 fun get(): Int { return a }}在 MainActivity 类中创建工具类获取 a 并且赋值: val myUtils = MyUtils() Log.w("MyUtils", "" + myUtils.get()) myUtils.a = 9527 Lo
2022-05-17 18:45:00
273
原创 Kotlin学习一:变量、函数、条件语句与循环语句
做好久 Android 开发,看 kotlin 代码,大概都看得懂,仔细看却看不懂。所以系统学习一下,入个门。创建第一个项目创建了第一个 kotlin 项目,只需要 java 改为 kotlin 即可:编译报错:Could not resolve org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.72....修改并删除 jcenter() :repositories { mavenCentral() google()
2022-05-16 20:15:00
368
原创 AndroidStudio对比两个分支代码
比如我想把 SIT 分支上的一个功能点合到 UAT 分支,但是那个功能很久了,我想先对比一下 SIT 与 UAT分支的不同。分支先切换到 UAT ,打开 AndroidStudio 点击右下角分支 UAT,选择要对比的 SIT 分支,然后点击 Compare with Current 。这样就可以看到两个分支不同的代码了。如下图:...
2022-04-02 09:44:40
1986
原创 Android webview加载重复页面不刷新/第二次加载不刷新
遇到特别奇怪 bug ,webview 第二次加载重复页面无法加载。搜索加这代码:webview.loadUrl("javascript:window.location.reload(true)");//方法无效加完测试部分手机好用,部分手机页面第一次都加载不出来了。如荣耀V30,小米10 ,超级无语。Android 原生也带了重新加载的方法:wv_pdf.reload();直接调用,无效,更无语了。然后搞了半天,要延时调用 reload() 方法:
2021-12-23 15:40:28
5733
3
原创 Flutter 2进阶(九):FijkPlayer播放视频与卡片效果
使用 FijkPlayer 播放视频,包括的功能:亮度调节,音量调节,长按2倍速播放,双击暂停/开始,全屏播放。大概的效果图:下载链接:CSDN :flutter_blbl.zip-Android文档类资源-CSDN下载GitHub:https://github.com/wuqingsen/FlutterLearnDemo用到的插件,网格布局,图片加载缓存淡入效果,视频播放器,音量和亮度控制器: flutter_staggered_grid_view: ^0.4.1 tr
2021-12-09 15:43:25
2628
1
原创 Flutter 2进阶(八):EventBus、轮播图与沉浸式状态栏
开发中,必须要用到的也就这三个小插件了。这里主要讲一下 EventBus,轮播图和沉浸式状态栏教程很多并且很简单。下面主要用上面三个实现的功能,b站广告图,沉浸式状态栏,以及点击左上角头像用 eventbus 进入我的页面,效果图如下:下载链接,建议去 CSDN 下载,不要积分,CSDN 是阶段性代码,GitHub 有时忘记传上去:CSDN :flutter_blbl.zip-Android文档类资源-CSDN下载GitHub:https://github.com/wuqingse.
2021-12-07 15:55:54
2281
ViewPager不设置预加载和Fragment只加载一次
2018-11-26
RecyclerView侧滑删除
2018-11-13
LogUtils.rar
2019-10-25
Android图片的三级缓存
2019-04-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人