自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 从Java到C++系列目录

​从Java到C++:CMake从Java到C++:JNI基本概念从Java到C++:JNI实战从Java到C++:异步从Java到C++:数组拷贝(暂无)从Java到C++:字符串(暂无)从Java到C++:异常定位(暂无)从Java到C++:动态加载/卸载so(暂无)​...

2022-03-19 19:02:59 2455

原创 从Java到C++:异步

从Java到C++系列目录前言摘要本文主要通过一个简化的MediaPlayer实现,来讲解JNI的异步引发的几个问题:异步线程如何获取JNIEnv?Java和C++的MediaPlayer对象如何实现一一映射?异步任务回调如何避免内存泄漏?代码示例代码:简化的MediaPlayer测试代码:MediaPlayerTest简化版MediaPlayer类图注意事项:左边是Java层的MediaPlayer。右边是C++层的MediaPlayer。两者通过android_media_M

2022-03-19 18:57:37 2060

原创 从Java到C++:JNI实战

从Java到C++系列目录前言概念本文中:JNI方法:指JNI提供的一系列API。native方法:跨native层调用的方法(Java->C/C++)。C/C++方法:除native方法外,普通的C/C++方法。native层:C/C++代码。代码示例代码:JNIInterface测试代码:JNIInterfaceTest摘要本文主要内容如下:加载sonative方法声明、定义native与static native静态注册与动态注册Java元素定位局部引用与全局

2022-03-19 18:51:21 3149

原创 从Java到C++:JNI基本概念

从Java到C++系列目录前言JNI(Java Native Interface):是一组Native编程接口,用来实现Java(Kotlin亦可)与其他编程语言(例如 C、C++ 和汇编)的交互。通过JNI,我们将一些重要代码下沉到C/C++层,提高反编译的难度。通过JNI,我们可以调用C/C++一些成熟的、高性能的第三方库。如:调用OpenCV进行图像处理、调用FFMPEG进行音视频处理等。JNI其实是用C/C++实现的,写JNI的时候,其实就是在写C/C++代码,要遵守C/C++的语法。J

2022-03-19 18:45:44 2442

原创 从Java到C++:CMake

[从Java到C++系列目录]前言CMake是一个开源的、跨平台的构建工具。在Android NDK(Native Development Kit)开发中,编译C/C++代码的方式,主要有两种:ndk-build、CMake。在Android源码中,你会频繁看见前者。而后者,则是Android Studio创建包含C/C++代码的项目时,默认使用的构建工具。CMake可以配合Gradle,完成整个项目的构建。摘要本文主要内容如下:创建Native项目Native项目的不同CMake语法代码

2022-03-19 18:42:22 3382

原创 FFmpeg:编译(Windows)

编译环境Windows 10编译流程安装msys2下载:MSYS2安装:点击下载好的exe,这里选择默认的安装路径:C:\msys64.配置环境变量:在windows的左下侧搜索栏,搜索环境变量,然后点击编辑系统环境变量。并将安装路径C:\msys64添加到系统变量Path中。在windows的搜索栏搜索msys2,打开msys2的命令行窗口。下载相关编译工具。在命令行中输入:pacman -S mingw-w64-x86_64-toolchain使用

2022-03-19 18:28:55 4638

空空如也

空空如也

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

TA关注的人

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