转自:http://www.cnblogs.com/mokey/archive/2013/04/10/3012961.html

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);
}
}
注释:
.Java_com_newtest2_jniHelper_SendInfo ”Java”开头 ”com_nretest2”为包名 ”jniHelper”为对应的java文件 ”SendInfo”为对应的方法 使用”_”连接
.(JNIEnv *env, jobject thiz, jstring info) 只有jstring info为自己的参数 其余两个为自带参数

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

jniHelper.SendInfo("send info seccesfully!");

cocos2d-x android java调用C++的更多相关文章

  1. Android Java调用Qt写的so库

    有时候,我们反编译apk得到一个so库,如果直接使用这个so库的话,必须使用原来so库同样的package名字,才能用.这样人家反编译你的apk,就知道你侵犯了人家的版权.为了达到混淆的目的,我们可以 ...

  2. cocos2d 中使用jni Java 调用 C++ 方法

    1.首先是LoadLibrary cocos2d中的C++代码会编译成一个.so文件.放在安卓文件夹下的libs/armeabi 下,然后java会load进来,这步我们不用做了,由于cocos2d已 ...

  3. Android使用JNI(从java调用本地函数)

    当编写一个混合有本地C代码和Java的应用程序时,需要使用Java本地接口(JNI)作为连接桥梁.JNI作为一个软件层和API,允许使用本地代码调用Java对象的方法,同时也允许在Java方法中调用本 ...

  4. Android JNI之JAVA调用C/C++层

    转载请声明:原文转自:http://www.cnblogs.com/xiezie/p/5929996.html 一.java调用本地函数的开发步骤: 1.编写本地方法的类(可以说是用来叙述本地方法的类 ...

  5. [转] Android自动化测试之使用java调用monkeyrunner(五)

    Android自动化测试之使用java调用monkeyrunner 众所周知,一般情况下我们使用android中的monkeyrunner进行自动化测试时,使用的是python语言来写测试脚本.不过, ...

  6. Java乔晓松-android中调用系统拍照功能并显示拍照的图片

    android中调用系统拍照功能并显示拍照的图片 如果你是拍照完,利用onActivityResult获取data数据,把data数据转换成Bitmap数据,这样获取到的图片,是拍照的照片的缩略图 代 ...

  7. 基于 Android NDK 的学习之旅-----Java 调用C

    随便谈谈为什么要Java调用C 吧: 我认为: 1.  有些公司开发Android项目的时候, 许多组件功能可能是C中已经实现了,所以我们没必要同样的功能又在java中实现一遍.例如我之前做的一个项目 ...

  8. 在Android中调用WebService

    某些情况下我们可能需要与Mysql或者Oracle数据库进行数据交互,有些朋友的第一反应就是直接在Android中加载驱动然后进行数据的增删改查.我个人不推荐这种做法,一是手机毕竟不是电脑,操作大量数 ...

  9. Android java传递string类型数据给C

    本文接着实现<Android java传递int类型数据给C>的还未实现的方法: public native String sayHelloInC(String s); 先贴一个工具方法, ...

随机推荐

  1. RequireJS进阶(一) 转

    为了应对日益复杂,大规模的JavaScript开发.我们化整为零,化繁为简.将复杂的逻辑划分一个个小单元,各个击破.这时一个项目可能会有几十个甚至上百个JS文件,每个文件为一个模块单元.如果上线时都是 ...

  2. check windows return character

    #ifndef _FILE_CHECK_H#define _FILE_CHECK_H#include <string.h>#include <vector> const int ...

  3. Weblogic修改后台日志输出级别

  4. int (*p)[4] p 是二级指针 二维数组 二级指针 .xml

    pre{ line-height:1; color:#2f88e4; background-color:#e9ffff; font-size:16px;}.sysFunc{color:#3d7477; ...

  5. 单独删除std::vector <std::vector<string> > 的所有元素

    下面为测试代码: 1.创建 std::vector< std::vector<string> > vc2; 2.初始化 std::vector<string> vc ...

  6. 从 Page not found: / 提示说起,我是怎么发现webstrom与myeclipse冲突问题及解决的

    #从 Page not found: / 提示说起,我是怎么发现webstrom与myeclipse冲突问题的 ##  从前面发表了两篇博文,[webstorm+nodejs+JetBrains ID ...

  7. air 移动开发配置文件详解

    转自http://www.badyoo.com/index.php/2012/09/12/208/index.html 目录 所需的 AIR 运行时版本 应用程序标识 应用程序版本 主应用程序 SWF ...

  8. DD_belatedPNG,解决 IE6 不支持 PNG-24 绝佳解决方案

    png24在ie下支持透明.终于找到下面的可行办法: 我们知道 IE6 是不支持透明的 PNG-24 的,这无疑限制了网页设计的发挥空间. 然而整个互联网上解决这个 IE6 的透明 PNG-24 的方 ...

  9. bool?

    public class GuestResponse { [Required(ErrorMessage = "Please enter your name")] public st ...

  10. 如何让Java和C++接口互相调用:JNI使用指南

    如何让Java和C++接口互相调用:JNI使用指南 转自:http://cn.cocos2d-x.org/article/index?type=cocos2d-x&url=/doc/cocos ...