[2019.01.24]JNI经验积累

news/2024/11/29 1:39:31/
[1 jobject<--->jclass|jstring]
(1)jobject向上转型jclass|jstring:
jclass jcls = static_cast<jclass>(jobject);
jstring jstr = static_cast<jclass>(jobject);
(2)jclass|jstring向下转型jobject:
默认情况下是自动转换的
[2 jstring<--->const char*]
(1)jstring-->const char*
const char* xxx = (*env)->GetStringUTFChars(env,jstring,NULL);
(2)const char*--->jstring
jstring xxx = (*env)->NewStringUTF(env,const char*);
[3 jlong-->long]
long是基本类型,直接赋值即可
long xxx = jlong;
看这张图就懂了!!!

[4 Native获取Java层函数接口]
java层:
public void onNotifyResult(ResultInfo resInfo);
Native层:(JNI)
jclass cls = env->GetObjectClass(p_JNInstance);
jmethodID onNotifyResult = env->GetMethodID(cls, "onNotifyResult",
"(Lcom/arcsoft/wideselfie/jni/JNIManager$ResultInfo;)V");
[5 Native获取Java层byte数组,并转换为OFFSCREEN]
[6 Unicode & UTF-8]
const jchar *chars;                //Unicode characters
const char *charsutf;            //UTF-8 characters


http://www.ppmy.cn/news/42016.html

相关文章

(排序6)快速排序(小区间优化,非递归实现)

TIPS 快速排序本质上是一个分治递归的一个排序。快速排序的时间复杂度是NlogN&#xff0c;这是在理想的情况之下&#xff0c;但是它最坏可以到达N^2。决定快速排序的效率是在单趟排序之后这个key最终落在的位置&#xff0c;越落在中间就越接近二分&#xff0c;越接近2分就越接…

手写vuex4源码(六)命名空间实现

一、命名空间使用 在子模块对象中添加 namespaced&#xff1a;true&#xff0c;为模块开启命名空间功能&#xff1b; 开启命名空间功能&#xff0c;相当于为每个模块添加独立的作用域&#xff0c;实现模块间状态和事件的隔离&#xff1b; 二、命名空间实现逻辑 在模块注册阶…

【神经网络】tensorflow实验5--数字图像基础

目录 1. 实验目的 2. 实验内容 3. 实验过程 题目一&#xff1a; ① 代码 ② 实验结果 题目二&#xff1a; ① 代码 ② 实验结果 4. 实验小结&讨论题 1. 实验目的 ①了解数字图像基本属性&#xff1b; ②掌握Pillow图像处理库的基本操作。 2. 实验内容 ①使用Pill…

BGP与OSPF混合组网

如图。R1和R2之间是OSPF Area 0,R23和R4之间是OSPF Area 1,R5和R6之间是OSPF Area2。除了R1和R2之间的cost是100,其余链路的cost都是10. AR1/2/3/4/5/6之间通过Loopback口建立IBGP全互联邻居关系,并且都是AS11520,和外部建立EBGP邻居访问100.100.100.1的网络。(不确定图中…

穿戴规范智能识别系统 yolov7

穿戴规范智能识别系统通过yolov7python网络模型AI深度视觉学习算法&#xff0c;穿戴规范智能识别系统对工厂画面中人员穿戴行为自动识别分析&#xff0c;发现现场人员未按照规定穿戴着装&#xff0c;立即抓拍告警。YOLOv7 的发展方向与当前主流的实时目标检测器不同&#xff0c…

(邱维声)高等代数课程笔记:n 元排列

n 元排列 \quad回顾一下&#xff0c;数域 KKK 上的 nnn 元线性方程组解的情况有几种&#xff1f;前面我们通过对增广矩阵作初等行变换化为阶梯形已经解决了这个问题。 \quad但事实上&#xff0c;化完阶梯形后&#xff0c;这个方程组的求解已经完成的差不多了。换言之&#xff0…

Python 小型项目大全 6~10

六、凯撒密码 原文&#xff1a;http://inventwithpython.com/bigbookpython/project6.html 凯撒密码是朱利叶斯凯撒使用的一种古老的加密算法。它通过将字母在字母表中移动一定的位置来加密字母。我们称移位的长度为密钥。比如&#xff0c;如果密钥是 3&#xff0c;那么A变成D&…

关键词数据分析-搜索词和关键词分析工具

要搜索热门关键词获取&#xff0c;可以采用以下几种方法&#xff1a; 使用百度指数&#xff1a;百度指数是一个实用的工具&#xff0c;可用于查看关键词的热度趋势、搜索量等数据。在百度指数中&#xff0c;您可以输入您要搜索的关键词&#xff0c;并查看近期的相关数据。这可以…