zoukankan      html  css  js  c++  java
  • cocos2d-x中Cocos2dxHelper.java -> .._.._Cocos2dxHelper.cpp(java调C++)

    cocos2d-x android java调用C++

    java调用C++

    1.在jniHelper.java文件中定义一个方法 代码如下

    public static native void SendInfo(String info);
    注释:关键字 native

    2.在存放AppDelagate.cpp的文件夹中添加一个jniTest.h文件

    3.在jniTest.h实现一个方法 代码如下

    复制代码
    #ifndef __JNI_TEST_H__
    #define __JNI_TEST_H__
    
    #include "cocos2d.h"
    using namespace cocos2d;
    
    void SendInformation(const char* info)
    {
        CCMessageBox("title",info);
    }
    
    #endif // __HELLOWORLD_SCENE_H__
    复制代码

    4.在test.cpp中添加代码

    复制代码
    #include "jniTest.h"extern "C"
    {
    
        void Java_com_newtest2_jniHelper_SendInfo(JNIEnv *env, jobject thiz, jstring info)
        {
            const char *temp = env->GetStringUTFChars(info, NULL);
            SendInformation(temp);
            env->ReleaseStringUTFChars(info, temp);
        }
    }
    注释:
    1.Java_com_newtest2_jniHelper_SendInfo  ”Java”开头   ”com_nretest2”为包名  ”jniHelper”为对应的java文件  ”SendInfo”为对应的方法  使用”_”连接
    2.(JNIEnv *env, jobject thiz, jstring info) 只有jstring info为自己的参数 其余两个为自带参数
    
    
    复制代码

    5.在起始文件newtest2.java中调用jniHelper.java文件中的方法 代码如下

    jniHelper.SendInfo("send info seccesfully!");
    
    
  • 相关阅读:
    个人作业——软件评测
    结对第二次作业
    寒假作业(2/2)
    寒假作业(1/2)
    markdown整理
    我们一定会在人生的更高处相见的
    时间复杂度 分析 可能算法
    有关数学 结论 规律 题目 小结
    jzyz 题库 选做 及 知识小结
    隔板法
  • 原文地址:https://www.cnblogs.com/Pobaby/p/5842734.html
Copyright © 2011-2022 走看看