
JNI/NDK
文章平均质量分 92
提辖鲁
这个作者很懒,什么都没留下…
展开
-
ndk实例总结:jni日志存储
ndk实例总结ndk实例总结:jni实例ndk实例总结:opencv图像处理ndk实例总结:安卓Camera与usbCamera原始图像处理ndk实例总结补充:使用V4L2采集usb图像分析ndk实例总结:使用fmpeg播放rtsp流前言本文是jni日志存储的实例,能够同时将jni日志打印在logcat中并且保存到日志文件内代码namespace jlog { namespace { const static size_t K_bufLen = 2048;原创 2020-11-11 15:21:22 · 795 阅读 · 0 评论 -
ndk实例总结补充:使用libuvc采集usb图像分析
ndk实例总结补充-使用libuvc采集usb图像分析ndk实例总结:jni实例ndk实例总结:opencv图像处理ndk实例总结:安卓Camera与usbCamera原始图像处理ndk实例总结补充:使用V4L2采集usb图像分析ndk实例总结:使用fmpeg播放rtsp流ndk实例总结:基于libuvc的双usbCamera处理前言本文是对ndk实例总结:基于libuvc的双usbCamera处理中jni部分的补充,主要分析下使用libuvc采集usb图像的流程libuvc介绍libu原创 2020-11-11 10:48:07 · 4768 阅读 · 2 评论 -
ndk实例总结:基于libuvc的双usbCamera处理
ndk实例总结ndk实例总结:jni实例ndk实例总结:opencv图像处理ndk实例总结:安卓Camera与usbCamera原始图像处理ndk实例总结补充:使用V4L2采集usb图像分析ndk实例总结:使用fmpeg播放rtsp流前言在Android上进行usb camera相关的开发,离不开两种方式,一种基于v4l2接口,我在ndk实例总结补充:使用V4L2采集usb图像分析中有过分析,另一种基于libuvc,github上有一个开源项目UVCCamera,但是封装的非常复杂,很难在其原创 2020-11-10 17:22:16 · 4617 阅读 · 11 评论 -
Ubuntu16.04 编译 Dlib for Android(更新版)
Ubuntu16.04 编译 Dlib for Android(更新版)本文为https://blog.youkuaiyun.com/lj402159806/article/details/76767882的更新版编译版本OpenCV 19.17ndk-r20编译环境首先需要安装sdk tools,然后通过sdkmanager安装cmake和ndkmkdir sdk &&am...原创 2019-06-11 15:03:10 · 371 阅读 · 0 评论 -
Ubuntu16.04 编译 OpenBLAS for Android(更新版)
Ubuntu16.04 编译 OpenBLAS for Android(更新版)本文是https://blog.youkuaiyun.com/lj402159806/article/details/85691400这篇OpenBLAS编译部分的更新版编译版本openblas-0.3.6ndk-r20编译环境首先需要安装sdk tools,然后通过sdkmanager安装cmake和nd...原创 2019-06-11 14:46:52 · 1357 阅读 · 16 评论 -
Android JNI 使用assets加载dlib特征点文件shape_predictor
Android JNI 使用assets加载dlib特征点文件shape_predictor本文介绍如何在jni中加载apk的assets文件夹中的shape_predictor_68_face_landmarks.dat在NDK中,google提供了AAssetManager_fromJava来获得Native中对应的AAssetManager,使用这个api可以将assets文件的内存地址...原创 2019-05-31 11:47:27 · 1351 阅读 · 5 评论 -
ndk实例总结:使用ffmpeg播放rtsp流
ndk实例总结系列ndk实例总结:jni实例ndk实例总结:opencv图像处理ndk实例总结:安卓Camera与usbCamera原始图像处理ndk实例总结补充:使用V4L2采集usb图像分析前言本篇博客总结下在jni中使用opencv进行图像处理的使用实例在Android中opencv的使用有两种方式,一种是使用opencv的Android版api,另一种是通过jni来使用ope...原创 2019-03-14 19:30:21 · 2744 阅读 · 5 评论 -
ndk实例总结补充:使用V4L2采集usb图像分析
ndk实例总结补充-使用V4L2采集usb图像分析前言本文是对ndk实例总结:安卓Camera与usbCamera原始图像处理中usbCamera部分的补充,主要分析下使用V4L2采集usb图像的流程V4L2介绍v4l2是linux操作系统下用于采集图片、视频和音频数据的API接口,配合适当的视频采集设备和相应的驱动程序,可以实现图片、视频、音频等的采集。在远程会议、可视电话、视频监控系统...原创 2019-02-28 14:40:02 · 1585 阅读 · 0 评论 -
ndk实例总结:安卓Camera与usbCamera原始图像处理
ndk实例总结-安卓Camera与usbCamera原始图像处理ndk实例总结系列ndk实例总结:jni实例ndk实例总结:opencv图像处理ndk实例总结:安卓Camera与usbCamera原始图像处理前言本篇博客总结下在jni中对安卓Camera与UsbCamera的原始图像进行处理的使用实例项目构架项目构架与上一篇文章ndk实例总结:opencv图像处理类似,也同样使用...原创 2019-02-26 14:05:22 · 3390 阅读 · 0 评论 -
ndk实例总结:opencv图像处理
ndk实例总结-opencv图像处理ndk实例总结系列ndk实例总结-jni实例前言本篇博客总结下在jni中使用opencv进行图像处理的使用实例在Android中opencv的使用有两种方式,一种是使用opencv的Android版api,另一种是通过jni来使用opencv,本篇总结是第二种方式依赖库编译通过jni在android平台使用opencv官方有提供已编译完的完整动态库...原创 2019-01-23 14:07:29 · 1364 阅读 · 0 评论 -
ndk实例总结:jni实例
ndk实例总结本篇博客总结下个人进行ndk开发时的使用实例ndk开发基础学习请先看下面四篇:JNI和NDK编程(一)JNI的开发流程JNI和NDK编程(二)NDK的开发流程JNI和NDK编程(三)JNI的数据类型和类型签名JNI和NDK编程(四)JNI调用Java方法的流程log打印使用Android Log新建一个android_log.h文件#include &am原创 2019-01-17 07:59:51 · 1305 阅读 · 0 评论 -
JNI 在 spring boot中的应用
jni 在 spring boot 中的应用编译jni动态库首先创建文件夹#创建java层文件夹mkdir -p java/com/gavinandre/jnispringboot/jni#创建native层文件夹mkdir native创建java文件echo "package com.gavinandre.jnispringboot.jni;public class Na...原创 2019-01-09 18:36:56 · 11407 阅读 · 6 评论 -
Ubuntu16.04 编译 OpenCV for Android(更新版)
ubuntu16.04编译opencv for Android(更新版)本文为https://blog.youkuaiyun.com/lj402159806/article/details/76762228的更新版编译版本opencv 3.4.5ndk-r18编译环境首先需要安装sdk tools,然后通过sdkmanager安装cmake和ndkmkdir sdk &&am...原创 2019-01-04 15:54:47 · 2394 阅读 · 2 评论 -
ubuntu16.04 编译 openblas mxnet for Android
ubuntu16.04 编译 openblas mxnet for Android编译版本openblas-0.3.5mxnet-masterndk-r18生成工具链#将ndk目录加入环境变量export NDK_BUNDLE_DIR=${HOME}/Android/ndk/android-ndk-r18b#将toolchain目录加入环境变量export MY_ANDROID_...原创 2019-01-03 13:38:00 · 1286 阅读 · 1 评论 -
Android串口通信
Android串口通信前言Android需要与下位机通信的情况下,如果对传输速率要求不高的话,串口通信是很可靠且最常用的一种方案分析官方提供了一个开源项目(android-serialport-api)提供了串口使用的方法,但是并不能直接使用,需要集成到自己的项目中,下面来分析下怎么使用串口串口使用和一般的硬件设备一样,无外乎四个步骤:1.打开串口(及配置串口)原创 2018-01-20 15:50:36 · 1300 阅读 · 0 评论 -
android重定向cout,使用cout来打印日志
android_buf.h#include <iostream>#include <streambuf>#include <android/log.h>class AndroidBuf : public std::streambuf { enum { BUFFER_SIZE = 255, };public: AndroidBuf(); ~Andro原创 2017-10-16 19:06:24 · 2612 阅读 · 0 评论 -
ubuntu16.04编译boost for Android
下载boost源码在官网下载指定版本的源码 http://www.boost.org/users/history/编译boost源码进入源码目录执行./bootstrap.sh生成编译工具编辑project-config.jam文件,替换如下内容# define platform name of ndkimport os ;if [ os.name ] = CYGWIN || [ os.原创 2017-08-06 15:07:38 · 3498 阅读 · 1 评论 -
ubuntu16.04编译dlib for Android
安装cmake参考这篇博客ubuntu安装CMake的几种方式中的软链接Android Sdk中的CMake下载dlib源码直接在github clone最新源码 https://github.com/davisking/dlib/tree/master 或者在官网下载指定版本的源码 http://dlib.net/编译dlib源码进入源码目录新建一个dlibAndroid.sh脚本文件,内容原创 2017-08-06 13:46:58 · 2348 阅读 · 0 评论 -
ubuntu16.04编译opencv for Android
安装cmake参考这篇博客ubuntu安装CMake的几种方式中的软链接Android Sdk中的CMake下载opencv源码直接在github clone最新源码 https://github.com/opencv/opencv/tree/master 或者在官网下载指定版本的源码 http://opencv.org/releases.html编译opencv源码进入源码目录新建一个ope原创 2017-08-06 11:56:32 · 3126 阅读 · 0 评论 -
ubuntu安装CMake的几种方式
apt安装cmakesudo apt install cmake这种方式安装方便,缺点是如果想要自己交叉编译Android平台的opencv会提示版本太低,因为ubuntu16.04源里的cmake版本只有3.5.1,而Android交叉编译工具链android.toolchain.cmake要求cmake版本最低是3.6.0下载源码编译cmake到cmake官网下载最新的cmakehttps://原创 2017-07-30 23:24:47 · 99877 阅读 · 5 评论 -
使用android studio进行ndk开发时如何定位crash错误
使用android studio进行ndk开发时如何定位crash崩溃错误 在ndk开发时, jni层的代码一旦出现问题, 就会打印如下信息, 然后直接闪退, 这时候让人非常抓狂, 只能过在各个jni函数中打印日志来跟踪问题,但是效率实在是太低,碰到有多线程的时候很难定位不到问题.网上搜索到的定位ndk崩溃的文章都是使用eclipse来举例的, 编译时产生的so文件保存在obj/local/arm原创 2017-07-14 10:22:19 · 3895 阅读 · 0 评论 -
wstring与string相互转换
wstring与string相互转换转载 2017-05-21 17:55:12 · 804 阅读 · 0 评论 -
AndroidStudio报错: undefined reference to 'AndroidBitmap_getInfo'
Error:(425) undefined reference to AndroidBitmap_getInfo' Error:(440) undefined reference toAndroidBitmap_lockPixels’解决方法: 在CMakeLists.txt文件中加入target_link_libraries( # Specifies the target library原创 2017-04-03 21:35:18 · 10109 阅读 · 4 评论 -
JNI和NDK编程(四)JNI调用Java方法的流程
JNI调用Java方法的流程JNI调用Java方法的流程是先通过类名找到类, 然后在根据方法名找到方法的id, 最后就可以调用这个方法了. 如果是调用Java的非静态方法, 那么需要构造出类的对象后才可以调用它, 下面通过例子来演示一下如何在JNI中调用Java的静态方法.首先在java中定义一个静态方法供JNI调用.原创 2017-04-03 18:21:50 · 4534 阅读 · 0 评论 -
JNI和NDK编程(三)JNI的数据类型和类型签名
JNI的数据类型和类型签名JNI的数据类型包含两种: 基本类型和引用类型.基本类型主要有jboolean, jchar, jint等, 它们和Java中的数据类型对应关系如下表所示: JNI类型 Java类型 描述 jboolean boolean 无符号8位整型 jbyte byte 无符号8位整型 jchar char 无符号16位整型 jsho原创 2017-04-03 17:47:50 · 3358 阅读 · 0 评论 -
JNI和NDK编程(二)NDK的开发流程
NDK的开发流程NDK的开发是基于JNI的, 主要有如下步骤1. 下载并进行配置NDK首先要下载NDK. 这里我们直接在Android SDK Manager里下载. 然后为NDK配置环境变量, 步骤如下所示.首先打开当前用户的环境变量配置文件:vim ~/.bashrc然后在文件后面添加如下信息: export PATH=~/Documents/Android/android-sdk-lin原创 2017-04-03 17:16:23 · 1194 阅读 · 0 评论 -
JNI和NDK编程(一)JNI的开发流程
Java JNI本意为Java Native Interface(java本地接口), 它是为方便java调用C、C++等本地代码所封装的一层接口. 我们都知道,java的有点是跨平台, 但是作为优点的同时, 其在和本地交互的时候就出现了短板. Java的跨平台特性导致其本地交互的能力不够强大, 一些和操作系统相关的特性Java无法完成, 于是Java提供了JNI专门用于和本地代码交互, 这样就增强原创 2017-04-03 15:15:50 · 1598 阅读 · 0 评论