• cocos2dx 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!");
  • 相关阅读:
    Android权限 uses-permission
    Android中的颜色设置
    px 与 dp, sp换算公式?
    如何成为一名黑客?(转)
    uva 1291(dp)
    框架模式 MVC 在Android中的使用
    CCA概述和安装
    机房收费系统合作版(三)——UI思索
    (36)JS运动之使物体向右运动
    二叉查找树的非递归操作
  • 原文地址:https://www.cnblogs.com/mokey/p/3012961.html
Copyright © 2020-2023  润新知