如何在C++和java之间互相调用

以"cocos2dxHelloWorld"为例,

在android的"cocos2dxHelloWorldproj.androidsrcorgcocos2dxapplicationApplicationDemo.java"添加

public class ApplicationDemo extends Cocos2dxActivity
{

public void javaFunction1()
{
;//我想在这里调用C++那边的函数 “int HelloWorld::cppFunction2(int value1, int value2)”
}

public int javaFunction2(int value1, int value2)
{
return value1 + value2;
}
}

在windows的"cocos2dxHelloWorldClassesHelloWorldScene.cpp"添加

void HelloWorld::cppFunction1()
{
;//我想在这里调用Java那边的函数 “int javaFunction2(int value1, int value2)”
}

int HelloWorld::cppFunction2(int value1, int value2)
{
return value1 + value2;
}

请问可以这样调用吗?或者有没有其他的折衷的方式可以2边互相调用

不知道楼主想表达什么= = ,放上我c++调用java的方法吧。其中javah生成.h文件什么的就不说了
c++部分
jint playVideoOp()
{
if(JniHelper::getJavaVM()->GetEnv((void**)(&env), JNI_VERSION_1_4) != JNI_OK)
{
debug_Printf("env falil
");
return -1;
}
jclass java_class = env->FindClass( “org/cocos2dx/Helloword/Bridge”);
if (java_class == 0) {
return -1;
}

	jmethodID java_method = env->GetStaticMethodID(java_class, "playVideo", "()V");
	if (java_method == 0) {
		debug_Printf("java_class falil

");
return -1;
}

	env->CallStaticVoidMethod(java_class, java_method);
	return 1;

}
java部分
public static void playVideo()
{

}

http://www.himigame.com/android-game/725.html 这里应该有你想要的

谢谢楼上2位,几天前就在网上找到了方法,正是3楼的链接的那个

不知道楼主想表达什么= = ,放上我c++调用java的方法吧。其中javah生成.h文件什么的就不说了
c++部分
jint playVideoOp()
{
if(JniHelper::getJavaVM()->GetEnv((void**)(&env), JNI_VERSION_1_4) != JNI_OK)
{
debug_Printf("env falil
");
return -1;
}
jclass java_class = env->FindClass( “org/cocos2dx/Helloword/Bridge”);
if (java_class == 0) {
return -1;
}

	jmethodID java_method = env->GetStaticMethodID(java_class, "playVideo", "()V");
	if (java_method == 0) {
		debug_Printf("java_class falil

");
return -1;
}

	env->CallStaticVoidMethod(java_class, java_method);
	return 1;

}
java部分
public static void playVideo()
{

}