自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(406)
  • 资源 (33)
  • 收藏
  • 关注

原创 Android硬编码录制视频实时添加水印

记录一下 ,在使用硬编码录制视频 ,实时的去添加水印 ;下面是效果图:主要的流程是:先将视频流转为 bitmap 图片 ,再将图片添加上想要的水印 ,最后再将添加完水印的 bitmap 转化为 NV21 的视频流 ;下面是 GitHub 的下载链接:https://github.com/wuqingsen/ToMp4Wu下面是关键的代码: /** * 将拿到的预览帧数据转为bitmap添加水印 再讲bitmap转为帧数据 * @param dst 预览的帧数据

2020-12-14 13:40:10 2668 12

原创 Android音视频开发:录制视频 + 语音识别 + 人脸识别

最近两个月在搞 Android 音视频相关方面的需求,下面是记录一次音视频开发的实操记录;最下面有demo;移动端具体的需求是这个样子的:录制视频 + 同时语音识别 + 同时人脸识别 + 同时语音合成;视频时长大概是一个小时,不能压缩处理。OK,需求出来我是崩溃的,Android 原生不支持录制视频的同时去实现语音识别,而 iOS 原生支持,这就加长了 Android ...

2020-01-06 15:44:36 3102 1

原创 Android冷启动-实现APP秒开

我们第一次打开 APP 的时候,如果没有做过处理,会经历一段白屏的时间,然后再开始看到我们的主页面;如下图所示:白屏的时间根据手机硬件配置来决定,一般在 500 - 2000 毫秒之间。什么是冷启动?冷启动就是,当 APP 进程被杀死,第一次打开该APP 启动,它的启动过程就是冷启动。冷启动的缺点是什么?在没有做任何处理的情况下,当我们打开 APP ,屏幕...

2019-11-20 18:12:28 1919 1

原创 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 3098

原创 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 7716 3

原创 Android图片的三级缓存

图片的三级缓存目的主要目的是为了节省流量、加快加载速度;每个 app 都会有大量的网络图片存在,当我们不做处理,每次打开 app 都去加载大量网络图片时,会耗费大量的流量,当网速不好时加载速度很慢;三级缓存介绍以及优点三级缓存即:内存缓存、本地缓存和网络缓存内存缓存:加载速度快、不耗费流量、优先加载本地缓存:加载速度快、不耗费流量、次级加载网络缓存:加载速度...

2019-04-02 16:03:02 574 1

原创 Android 下拉刷新上拉加载可以左右滑动

下面是下拉刷新上拉加载可以左右滑动的实例,下面是效果图:GitHub 下载地址:https://github.com/wuqingsen/MySlidingNestedCSDN 下载地址:https://download.csdn.net/download/wuqingsen1/11072595下面就来看下如何实现的;首先看 xml 文件中的代码:<Relat...

2019-03-29 17:24:05 765

原创 SpannableStringBuilder从简单到复杂的使用

很多 APP 都有下面的效果:这样的效果就是用SpannableStringBuilder 实现的,下面就了解SpannableStringBuilder 的简单使用以及实现上面的效果。SpannableString、SpannableStringBuilder与String的关系SpannableString、SpannableStringBuilder 基本上与 St...

2019-03-15 17:31:28 11358 1

原创 仿抖音列表

下面是自己写的防抖音列表,包括:可上下滑动播放视频 播放完当前视频,自动播放下一个 仿抖音评论列表 节操播放器的简单使用下面是两张效果图: 下面是下载地址:GitHub 下载地址:https://github.com/wuqingsen/DouYinWuCSDN 下载地址:https://download.csdn.net/download/wuqings...

2019-03-08 16:31:23 2576 2

原创 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 437 1

原创 Android内存泄漏

内存泄漏:当一个无用的对象仍然被其它对象所持有引用,从而造成该对象无法被系统回收,以致该对象在堆中所占用的内存单元无法被释放而造成内存空间浪费;这就是内存泄漏。 单例造成内存泄漏在自定义工具类时,经常会使用到单例模式,也经常这么写代码:public class Utils { private static Utils utils; private Context ...

2018-12-18 16:14:27 806

原创 View的绘制流程简单理解

在 Android 中,我们会用到很多控件(如:TextView 等)、容器(如:LinearLayout 等);其中控件都是继承于 View ;而容器都是继承于 ViewGroup ;那么这些控件、容器是如何显示到屏幕上的呢?无论是控件还是容器都要经过三个最主要的过程,从而显示到屏幕上的;即:onMeasure()、onLayout 和 onDraw;1. onMeasure()...

2018-12-10 18:14:32 406

原创 ViewPager不设置预加载和Fragment只加载一次

今日写了一个 ViewPager 和 Fragment 配合使用,达到 ViewPager 不设置预加载(也就是一次只加载一个)和 Fragment 懒加载(也就是只加载一次)。通俗的说就是滑动或点击哪个便加载哪个,并且加载过的不再加载。下面是效果图:下面是下载地址:GitHub 下载地址:https://github.com/wuqingsen/FragmentLazyCSDN ...

2018-11-26 15:34:04 6362 4

原创 Android AsyncTask

多线程的应用在Android开发中是非常常见的,常用方法主要有:1.继承Thread类(继承 Thread 类和实现 Runnable 接口的区别)2.实现 Runnable 接口(继承 Thread 类和实现 Runnable 接口的区别)3.Handler4.AsyncTask(异步任务)5.HandlerThread今天就来看一下关于 AsyncTask(异步任务)的...

2018-10-08 16:51:59 323

原创 多线程应用的常用方法

多线程的应用在Android开发中是非常常见的,常用方法主要有:1.继承Thread类(继承 Thread 类和实现 Runnable 接口的区别)2.实现 Runnable 接口(继承 Thread 类和实现 Runnable 接口的区别)3.Handler4.AsymcTask(异步任务)5.HandlerThread...

2018-09-29 13:52:35 351 1

原创 Android 面试题

1. Android 五大布局Android 五大布局2. Android 四大组件之一Activity 的理解Activity 的介绍,四种状态以及生命周期详细介绍3. Activity 的四种启动模式Activity 的四种启动模式的介绍以及简单示例4. 如何安全退出已调用多个 Activity 的 Application安全退出已调用多个Activity的App...

2018-09-26 14:18:31 355 1

原创 Android Handler

多线程的应用在Android开发中是非常常见的,常用方法主要有:1.继承Thread类(继承 Thread 类和实现 Runnable 接口的区别)2.实现 Runnable 接口(继承 Thread 类和实现 Runnable 接口的区别)3.Handler4.AsyncTask(异步任务)5.HandlerThread下面就来看一下关于Handler 的理解和用法:...

2018-09-14 16:51:21 1389 1

原创 Android 窗口机制

1.熟悉窗口结构图:2.对 PhoneWindow,DecorView,WindowManager,ViewRootImpl 等关键词理解。2.1 PhoneWindow每个 Activity 都有一个 Window 对象的实例,这个实例实际上是 PhoneWindow 类型的,由此看出:PhoneWindow 是 Window 的子类。知识:每一个Activity都有一个 P...

2018-09-06 18:19:28 915 1

原创 Android 布局优化处理(含 include、Viewstub、merge)

下面是一位才疏学浅的博主对布局优化的理解和认识(更多好内容戳下面:https://blog.csdn.net/wuqingsen1):1.下面先讲解  include、Viewstub、merge 的基本用法,如果了解,可以直接看下面的布局优化。1.1 include 用法(一般用于复用的布局,比如每个界面的标题等,从而实现布局模块化)。   代码下载:https://download...

2018-08-31 11:58:50 500 1

原创 Android 事件分发机制

在结合资料和项目开发过程中遇到的问题(更多好内容戳下面:https://blog.csdn.net/wuqingsen1),下面是本人对 Android 事件分发机制的了解:1. 事件分发的对象是谁?   答:点击事件( Touch 事件 )。Touch 事件的相关细节(发生触摸的位置、时间等)被封装成 MotionEvent 对象。2.事件的类型分为几种?   答:分为四种,具体...

2018-08-29 17:36:36 536 1

原创 软键盘弹出edittext在最下面

【代码】软键盘弹出edittext在最下面。

2023-08-30 11:39:10 260

原创 微信小程序开发2常用组件与小程序发布

开发中常用的组件,所有组件可以看微信开发文档:常用的6个:view,scroll-view,swiper && swiper-item,text && rich-text,button,image。

2023-02-08 21:15:00 443 1

原创 微信小程序开发1初识

project.config.json 项目的配置文件,记录个性化设置:setting(编译配置),projectname(项目名称),appid(小程序账号ID)。打开开发者工具,选择新建+一个项目,输入名称,和项目路径,再输入复制的AppID(小程序ID),选择不使用云端,保存即可。app.json 小程序的公共配置,设置UI,决定页面文件的路径,设置网络超时时间,设置多tab等。app.js 整个项目的逻辑文件,注册小程序实例,绑定生命周期回调函数,错误监听等。

2023-02-07 22:00:00 494

原创 Android 实现页面灰色蒙版

【代码】Android 实现页面灰色蒙版。

2022-12-02 09:43:13 701

原创 webView加载白屏

记录个问题,webview加载一直白屏。

2022-10-27 10:23:02 521

原创 Android SM4加密与java中的url进行编码和解码

项目需求要用SM4加密,搜了搜用的多,但有用的少,记录一下。可以加密为16进制或base64,按个人需求。然后再下载这个jar包到本地,引入。

2022-10-26 09:52:43 1344

原创 APP之间的跳转和传值

写的时候要写一个中间的 activity ,在此页面中判断具体逻辑,进入登录页面或者进入首页等。这是因为每次接受传值的 activity 必须要是新建的。AndroidManifest.xml 设置。AndroidManifest.xml 设置。遇到问题,每次跳转不一定都能取到传来的值。A 跳转至 B 并传值;这个不会影响用户体验。

2022-10-26 09:28:06 407

原创 Mac -bash: ls: command not found和无法运行.sh脚本

升级后运行.sh报错:unable to execute xxx.sh : Operation not permitted。但重启终端就得重新输入。再执行 ./test.sh。

2022-09-21 16:45:34 832

原创 Android JSONArray去重

【代码】Android JSONArray去重。

2022-08-25 10:23:37 680

原创 PlayerBase播放黑屏有声音

记录一下用这个框架的问题。

2022-08-11 11:52:04 1025

原创 Android-OpenGL坐标系

Android 手机中的坐标系(竖屏与横屏):OpenGL 顶点坐标系(竖屏与横屏):OpenGL 纹理坐标系(竖屏与横屏):

2022-08-09 14:20:50 713

原创 Android音视频学习思路整理

音视频学习有好多文章,但是很多都是非常杂乱,整理了一下网上学习的比较有用的文章,学习思路可以按这个链接下来学习:【Android 音视频开发打怪升级:音视频硬解码篇】一、音视频基础知识 - 掘金整理的很到位,包括基础,OpenGL,ffmpeg。就是代码是 kotlin,可以花一天时间入个门,代码就能看懂。实在看不懂的,可以按照他的目录作为学习思路,百度文章来看。可以看上面文章中的概念,然后代码看下面的整理用 java 来学习音视频。关于摄像头学习参考这个,语言是java,这里面

2022-05-26 10:38:04 791 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 234

原创 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 188

原创 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 255

原创 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 350

原创 AndroidStudio对比两个分支代码

比如我想把 SIT 分支上的一个功能点合到 UAT 分支,但是那个功能很久了,我想先对比一下 SIT 与 UAT分支的不同。分支先切换到 UAT ,打开 AndroidStudio 点击右下角分支 UAT,选择要对比的 SIT 分支,然后点击 Compare with Current 。这样就可以看到两个分支不同的代码了。如下图:...

2022-04-02 09:44:40 1788

原创 Android webview加载重复页面不刷新/第二次加载不刷新

遇到特别奇怪 bug ,webview 第二次加载重复页面无法加载。搜索加这代码:webview.loadUrl("javascript:window.location.reload(true)");//方法无效加完测试部分手机好用,部分手机页面第一次都加载不出来了。如荣耀V30,小米10 ,超级无语。Android 原生也带了重新加载的方法:wv_pdf.reload();直接调用,无效,更无语了。然后搞了半天,要延时调用 reload() 方法:

2021-12-23 15:40:28 5421 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 2475 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 2248

百度地图SDK获取位置

百度地图SDK获取位置~

2018-12-04

RecyclerView滑动置顶

RecyclerView滑动置顶,RecyclerView平滑的滑动到指定的item~哈

2018-11-27

Android流式布局FlowLayout

Android流式布局FlowLayout,用起来爽歪歪,好用=-=-=-=-=

2018-11-26

ViewPager不设置预加载和Fragment只加载一次

今日写了一个 ViewPager 和 Fragment 配合使用,达到 ViewPager 不设置预加载(也就是一次只加载一个)和 Fragment 懒加载(也就是只加载一次)。通俗的说就是滑动或点击哪个便加载哪个,并且加载过的不再加载。

2018-11-26

Android通知栏消息、点亮屏幕、震动、声音、显示样式

Android通知栏消息、点亮屏幕、震动、声音、显示样式的小例子。

2018-11-14

RecyclerView侧滑删除

自定义工具类实现,RecyclerView侧滑删除,效果图链接: https://blog.csdn.net/wuqingsen1/article/details/84033064

2018-11-13

Android实现图片手势缩放、移动、双击放大缩小

Android实现图片手势缩放、移动、双击放大缩小。

2018-11-13

单选和多选

这里面主要包括HashMap实现单选(HansMap的遍历)和HashSet实现多选

2018-11-13

Fragment的简单使用

Fragment的简单使用,最平常的使用,底部有四个按钮。

2018-10-31

Fragment的简单使用(类似电商类)

Fragment的简单使用(类似电商类),点击按钮在屏幕的左侧。

2018-10-31

Android AsyncTask 使用

里面是Android AsyncTask 的两种使用方法,一种是加载网络图片,一种是模拟耗时加载进度条

2018-10-08

Android五种存储方式

Android五种存储方式,实例代码,其中有封装四个工具类,可以直接用。

2018-09-26

Handler简单使用

Handler简单使用包括:1.如何发送延迟消息,2.如何发送循环消息,3.如何发送带参数的消息以及拦截消息。

2018-09-13

android逐帧动画

android 逐帧动画,里面有三张图片来回切换,一个持续时间为50毫秒的动画帧

2018-09-04

android 属性动画

android 属性动画,类似于弹幕的从屏幕最右侧划入,在中间停留一下,最左端划出

2018-09-04

Android 布局优化

Android 布局优化,(含 include、Viewstub、merge的用法)

2018-08-30

Android 事件分发机制

Android 事件分发机制 ,里面有对Android 事件分发机制解释说明。

2018-08-30

Fragmen与RecyclerView使用

Fragmen与RecyclerView使用,recycleView精确使用,Fragmen与RecyclerView使用

2017-11-30

android内录+外录+录屏 合成mp4

android内录+外录+录屏。合成mp4

2023-10-17

SM4加密资源所用的jar包

SM4加密资源所用的jar包

2022-10-26

flutter_blbl.zip

视频播放器fijkplayer使用

2021-12-09

flutter_blbl.zip

阶段性:eventbus封装使用,basewidget封装,轮播图与沉浸式状态栏

2021-12-07

flutter_blbl.zip

flutter路由封装

2021-12-01

flutter_blbl.zip

用flutter模仿哔哩哔哩注册登录页面

2021-11-30

flutter_trip_one.zip

flutter第一个简单项目,用到基础控件。

2021-11-24

CircularLoadWu.zip

Android自定义圆形加载框

2020-04-10

LogUtils.rar

Android Log日志保存到本地并读取 下面是博客连接:https://blog.csdn.net/wuqingsen1/article/details/102744275

2019-10-25

Android老虎机的简单使用

这是Android老虎机的简单使用;This is a simple use of an Android slot machine

2019-09-26

AndroidZxingScan-master.rar

这是仿支付宝扫描,使用zxing实现,里面自定义了zxing的部分代码

2019-09-26

WifiDemoWu.rar

wifi常用管理方法,如:连接指定wifi,获得wifi的加密方法等等

2019-09-06

TextViewRoll.rar

TextView自动垂直滚动

2019-08-22

Android图片的三级缓存

这是一个关于Android图片的三级缓存的一个示例。博客地址:https://blog.csdn.net/wuqingsen1/article/details/88972505

2019-04-02

RecyclerView添加头部

这是一篇关于RecyclerView添加头部的Android代码,里面是RecyclerView采用瀑布流来添加头部

2019-04-01

Android下拉刷新上拉加载以及左右滑动的经典实例

Android下拉刷新上拉加载以及左右滑动的经典实例,包括下拉刷新上拉加载以及左右滑动。

2019-03-29

仿抖音自动播放以及评论界面

这是自己写的仿抖音app,主要有视频播放,手势上下滑动播放和自动播放,以及抖音评论页面

2019-03-08

空空如也

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

TA关注的人

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