![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
jni
tianxiawuzhei
热爱技术,喜欢探究,喜欢记录和分享。
展开
-
cocos2dx C++调用java
1、从C++调用java时,尽量使用java的静态函数。因为静态方法调用比较简单。这样不需要先new一个对象。 2、但是因为java类中的静态方法, 只能操作静态类,而如果把类中的所有变量都定义为static的,有时候也没办法做到(可能会有一些特殊情况)。 3、可以采用封装一层的思想。就是在定义一个类中,都是静态方法,供C++端调用,但是它有一些成员变量可以是其他的类,当然这些成员变量是静态的原创 2015-02-04 20:57:23 · 2701 阅读 · 0 评论 -
javah命令使用记录
需求: cocos2dx android游戏开发需要经常从java代码调用C++函数,这是就要用到javah根据java文件生成的class文件,生成头文件。 生成步骤: 1、进入到android工程的bin目录下,bin目录下会有一个classes目录,这个目录下是我们的工程java文件生成的class文件。 2、进入classes目录 3、执行javah命令: XXX\bin\cl原创 2015-02-05 12:41:35 · 880 阅读 · 0 评论 -
Java Programming Tutorial
Java Programming Tutorial Java Native Interface (JNI) 1. Introduction At times, it is necessary to use native codes (C/C++) to overcome the memory management and performance constraints转载 2015-01-22 09:37:33 · 1055 阅读 · 0 评论 -
在 JNI 编程中避免内存泄漏
本文详细论述如何在 JNI 编程中避免内存泄漏。论述了 JNI 编程中可能引发的明显的内存泄漏。本文的重点是阐述 JNI 编程中潜在的内存泄漏,希望读者通过本文对 Local reference 有更深刻的理解,了解 Local reference 表的存在,区分 Local reference 和局部变量,从而认识到 Local reference 可能引发的 native memory 内存泄转载 2015-01-22 10:08:04 · 603 阅读 · 0 评论 -
Cocos2d-x中通过JNI进行C++调用Java代码
转自http://go3k.org/?p=49 主体思路 通过JNI获取java虚拟机,再获取当前程序的JNI环境,通过JNI环境获取需要调用的java类信息,再获取需要调用的java类中的函数信息。再通过JNI环境调用,使用类信息、函数信息,调用对应的java函数。 看起来好像有点复杂,but不用担心,cocos2d-x中有一个JniHelper类(头文件的copyright为转载 2015-01-22 11:04:35 · 531 阅读 · 0 评论 -
cocos2dx C++调用java -- 字符串传递
double getDoubleForKeyJNI(const char* pKey, double defaultValue) { JniMethodInfo t; if (JniHelper::getStaticMethodInfo(t, CLASS_NAME, "getDoubleForKey", "(Ljava/lang/String;D)D")) {原创 2015-03-23 13:10:00 · 1134 阅读 · 0 评论 -
cocos2dx java调用c++ -- 字符串传递
1、Java_org_cocos2dx_lib_Cocos2dxRenderer.cpp JNIEXPORT void JNICALL Java_org_cocos2dx_lib_Cocos2dxRenderer_nativeInsertText(JNIEnv* env, jobject thiz, jstring text) { const char* pszText = e原创 2015-03-23 20:47:28 · 1655 阅读 · 0 评论