自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 资源 (9)
  • 收藏
  • 关注

原创 【USB读写速率 android USB HID通信】成功的实现了每125微妙接收到一包数据,每秒8000包数据(256字节一包)

Android实现读取USB数据,每秒读取8000包的功能

2022-06-18 13:54:23 2701 3

原创 c++ map的增删改查

仅仅记录在开发过程中对MAP的使用;包括修改、添加、删除、遍历;二、给map集合添加数据1.方式一代码如下:2.方式二代码如下:二、给map集合修改数据1.方式一代码如下:二、给map集合遍历数据1.方式一代码如下:2.方式二代码如下:3.方式三代码如下:...

2022-06-17 18:10:04 1570

原创 基于Android的C++线程池、线程的使用

由于项目的需要,把原本应该放在JAVA层进行读取和解析USB数据的逻辑放在了JNI层;这就意味着,要在native层进行高并发操作;这时就需要涉及到线程和线程池的操作了;本文主要记录线程和线程池的创建与封装;`线程是操作系统能够进行运算调度的最小单位,被包含在进程中,是进程中实际运作、被系统独立调度和分派的基本单位;一个标准的线程由线程ID、当前指令的指针、寄存器集合和堆栈组成。一个线程可以创建和撤销另一个线程,同一个进程中多个线程可以并发进行。下面就线程库pthread.h说起;理论网上有很多,这里就

2022-06-17 17:28:19 700

原创 LINUX c++线程池框架

线程池

2022-06-15 09:26:53 309

原创 使用JsonCpp在android NDK中解析Json

`json文件是比较轻量级的文件,格式简单,使用方便。用来存放信息相比其他方式有自己得天独厚的优势。今天给大家分享的是如何利用C++来操作json文件。如果你知道如何使用jsoncpp类库,可以不用看附,如果第一次使用,请先到最后,将环境配置好,再进行操作。JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次

2022-06-07 20:55:34 1062

原创 NDK进程间通讯

Linux下的进程间通讯的一种方式——管道通讯。管道通讯可以视作两个进程之间有一个管道相连接,通过这个管道来进行进程间的数据交换。首先创建管道,然后要传输数据的一方向管道中写入要传输的数据,然后接收方从管道中将数据取走,这样一来就完成了两个进程间的通讯。int pipe(int fileds[2])创建管道:fileds[2](文件描述符数组):创建管道时传入的用于管道IO的文件描述符。fileds[0]:通过管道接收数据时的文件描述符,即管道的出口fileds[1]:通过管道发送数据时的文件描述符,即管道

2022-06-07 20:16:43 192

原创 【tcpip】ndk实现实现进程间通信

服务端客户端

2022-06-07 20:10:25 271

原创 使用CMake引入jsoncpp

在jni的cpp中使用json,百度了一下,大多都是下面这个库,但是和之前的文档有点出入了,记录一下。jsoncpp库地址:https://github.com/open-source-parsers/jsoncpp添加jsoncpp库1、在cpp目录下创建一个jsoncpp目录2、下载jsoncpp项目3.把src\lib_json文件夹下的文件都拉到项目的cpp/jsoncpp文件夹下(除CMakeLists.txt)4.再把include\json文件夹下的文件都拉到项目的cpp/jsoncp

2022-06-07 20:06:30 2032 1

原创 【ANDROID双进程】Android进程通信

Android NDK层实现多进程开发

2022-06-07 11:21:08 584

原创 【C语言】线程二

基于Linux API的多线程文章目录基于Linux API的多线程前言一、操作系统1.多线程相关与线程之间同步技术1.1.linux下的线程创建、等待、获取线程id1.2.互斥体1.3.信号量1.3.条件变量1.4.读写/自旋锁2.熟悉守护进程的创建、原理3.了解计划作业crontab4.熟悉进程、线程状态查看命令(top、strace、pstack)5.熟悉内存状态查看命令memstat、free6.熟悉IO状态查看命令iostat、df、du7.了解linux文件的权限、用户、时间(ctime、m

2022-05-19 10:50:08 99

原创 【C语言】线程原理及实现

文章目录前言一、原理图二、线程1.线程标识2.线程创建3.修改线程属性4.线程与进程4.线程分离5.线程退出总结前言提示:这里可以添加本文要记录的大概内容:什么是线程?我们首先要知道的一件事情是一个进程里面可以包括多个线程,不能反过来,我们之前了解到的不同进程可以做不一样的事情,我们举一个简单易懂的例子:我们的电脑上面有很多的应用程序,微信、QQ,酷狗音乐等等,我们运行一个应用程序就有一个进程,那什么是线程呢?比如其中一个,我们打开了酷狗音乐,打开音乐听着,这时候你觉得歌好听你就去看评论,这时候你想

2022-05-19 10:22:07 3774 1

原创 C语言pthread.h运用

线程概念什么是多线程,提出这个问题的时候,我还是很老实的拿出操作系统的书,按着上面的话敲下“为了减少进程切换和创建开销,提高执行效率和节省资源,我们引入了线程的概念,与进程相比较,线程是CPU调度的一个基本单位。”当 Linux 最初开发时,在内核中并不能真正支持线程。那为什么要使用多线程?使用多线程的理由之一是和进程相比,它是一种非常"节俭"的多任务操作方式。运行于一个进程中的多个线程,它们彼此之间使用相同的地址空间,共享大部分数据,启动一个线程所花费的空间远远小于启动一个进程所花费的空间,而且,线

2022-05-18 20:00:46 7562 1

原创 【C语言】文件的读写、复制

C语言文件的读写与加密、解密文章目录C语言文件的读写与加密、解密前言一、文件的读二、文件的写1.导入头文件2.打开文件路径3.写入文件4.完整实现三、文件的复制1.导入头文件2.打开文件3.读取文件并写入4.复制的完整实现四、获取文件的大小1.导入头文件2.代码实现五、文件的加密1.导入头文件2.代码实现六、文件的解密1.导入头文件2.代码实现七、文件使用密钥的方式进行加密1.导入头文件2.代码实现八、文件使用密钥的方式进行解密1.导入头文件2.代码实现前言本文主要记录在C语言开发过程中关于文件操作

2022-05-14 15:38:25 336

原创 Android下的多线程下Handler的使用

在Android下面也有多线程的概念,在C/C++中,子线程可以是一个函数,一般都是一个带有循环的函数,来处理某些数据,优先线程只是一个复杂的运算过程,所以可能不需要while循环,运算完成,函数结束,线程就销毁。对于那些需要控制的线程,一般我们都是和互斥锁相互关联,从而来控制线程的进度,一般我们创建子线程,一种线程是很常见的,那就是带有消息循环的线程。消息循环是一个很有用的线程方式,曾经自己用C在Linux下面实现一个消息循环的机制,往消息队列里添加数据,然后异步的等待消息的返回。当消息队列为空的时候就

2022-04-28 11:47:15 2274 1

原创 Android通过Handler传递byte[]

方法一:把byte[]放在Bundle对象中;byte[] buff={0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09};Bundle bundle=new Bundle();bundle.putByteArray("bytes",buff);Message mag=new Message();msg.what=0;msg.obj=bundle;Bundle b=(Bundle)msg.obj;byte[] c=bundle.getByteArra

2022-04-28 11:15:43 1218

原创 android向byte插入字节

public static byte[] sendSocketData(byte[] buff){ int len=buff.length; byte [] sendData=new byte[len+12]; byte phb1=(byte)0xBF; byte phb2=(byte)0xBF; byte phb3=(byte)0xBF; byte phb4=(byte)0xBF; by..

2022-04-28 10:34:37 1077

原创 Android拼接Byte数组

/** * * * @param byte_1 Sou1原数组1 * @param byte_2 Sou2原数组2 * @param size 长度 * @return bytestr 返回一个新的数组,包括了原数组1和原数组2 */ public static byte[] subPackage(byte[] byte_1, byte[] byte_2, int size) { // java 合并两个b.

2022-04-28 10:32:15 2058

原创 Android强行关闭指定进程

public static void closeProcess(Context context,String namePro){ try{ //1.拿到进程的报名 String name = namePro.trim() ; //判断内容 Log.e("zpx","开始关闭"+name); //调用系统服务api杀死进程 //此种方式不能自杀,也..

2022-04-28 10:28:40 864

原创 Android Handler与Looper

本文分析下Android的消息处理机制,主要是针对Handler、Looper、MessageQueue组成的异步消息处理模型,先主观想一下这个模型需要的材料:消息队列:通过Handler发送的消息并是即刻执行的,因此需要一个队列来维护工作线程:需要一个线程不断摘取消息,并执行回调,这种线程就是Looper线程互斥机制,会有不同的线程向同一个消息队列插入消息,这个时候就需要同步机制进行保证空消息队列时候的同步机制,生产者消费者模型上面的三个部分可以简单的归结为如下图:APP端UI线程都是Loope

2022-04-28 10:24:18 252

原创 基于JAVA的USB-HID设备通信设计与实现

摘要:针对Java语言本身没有指针的类型,使用Java语言调用API与USB—HID设备通信显得尤为困难的问题,介绍了如何使用JNative框架实现在windows平台下访问USB—HID设备,使java开发人员可以直接调用API完成程序与设备的通信。关键词:Java;USB—HID;JNative0 引言Java调用DLL的常用方法大致为几种,JNI,JNA,JNArI’IVE等,但实现与易用性差距还是很大…。JNI使用最繁琐,先要编写带有native声明的方法的Java类,使用javac命令编

2022-04-21 14:46:21 3597 1

原创 【USB】Android实现读写USB串口数据

最近在研究USB方面的内容;先后做了关于Android读写HID、串口设备的DEMO。本文比较简单,主要介绍的是Android实现读取串口数据的功能废话不多说,先看一下业务层是如何调用的;如图:首先,监听USB连接状况,当USB 进行请求USB权限,当USB权限申请成功,进行调用打开Usb设备的方法;当监听到USB断开,进行关闭连接;这是向串口写入数据的方法;本DEMO主要使用Handle进行数据各个线程之间的数据传到,以及USB连接读写情况的反馈;下面直接上代码:连接USB设备的代码 p

2022-04-20 22:50:49 10484 14

原创 [usb专题]别让 USB 传输速度影响 Android 开发效率

别让 USB 传输速度影响 Android 开发效率概览迭代速度是构建高质量 Android 应用的关键要素。处理的速度越快,应用程序的体验就越顺畅。这篇文章将和大家聊聊如何优化部署时间。部署在 Android Studio 3.5 版本中,我们在多个方面改进了迭代速度。开发者可以使用 Apply Changes: 根据代码结构,它可以替换更改的代码,并且重启当前 Activity; 如果代码和 Activity 生命周期无关,则会调用 “Apply Code Changes” 来仅替换代码而不会

2022-04-20 22:05:42 298

原创 Java中bytebuffer和string的转换记录

Java中bytebuffer和string的转换记录byte[] bytes = k.getBytes( StandardCharsets.UTF_8 );String v = new String( bytes, StandardCharsets.UTF_8 );String s = StandardCharsets.UTF_8.decode(byteBuffer).toString();

2022-04-14 16:34:46 2322

Android native层线程封装文件

NDK线程封装

2022-06-20

Android 读取USB数据

Android读写USB串口数据

2022-04-20

Android集成libusb资源包

Android 集成libusb 实现读写USB HID设备,读写串口设备

2022-04-20

LoginDemo_MVVM.zip

C# WPF+MVVM 实现登录跳转功能,适合初学者

2021-04-15

zhousong-FFmpegAndroid-master.zip

源码 android端基于FFmpeg库的使用。添加编译ffmpeg、shine、mp3lame、x264源码的参考脚本 目前音视频相关处理: 音频剪切、拼接 音频混音 音频转码 音视频合成 音频抽取 音频解码播放 音频编码 视频抽取 视频剪切 视频转码 视频截图 视频降噪 视频抽帧 视频转GIF动图 视频添加水印 视频画面拼接 视频反序倒播 视频画中画 图片合成视频 视频解码播放 本地直播推流 实时直播推流 音视频解码播放 OpenGL+GPUImage滤镜 FFmpeg的AVFilter滤镜 使用mp3lame库进行mp3转码 视频拖动实时预览 moov往前移动 ffprobe检测多媒体格式 IjkPlayer的RTSP超低延时直播 IjkPlayer的RTSP多路投屏直播

2020-08-11

Vue 实现智能锁功能 源码

源码,Vue实现智能锁功能源码;此功能后端使用的是java,数据客使用的是SQLSERVER,前端H5使用的是Vue

2020-08-10

Android商城平台,移动端+服务端 源码.rar

商城平台服务端与移动端源码,可以直接使用;支持Android平台;移动端Android,服务端是JAVA,数据库用的是Mysql.

2020-08-10

Android反编译工具包.rar 2020/8/10

工具包;Android app应用反编译工具包;安装之后可以直接使用。

2020-08-10

进度条工具.rar C#实现进度条功能 源码

C#源码 实现进度条功能,可以直接使用。

2020-08-10

空空如也

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

TA关注的人

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