android层java如何调用cocos2dx c++代码 步骤

1.在android层上声明native函数

private static native void xxxTest();

2.在android层上引用native函数

@Override
protected void onCreate(Bundle savedInstanceState) {
   // TODO Auto-generated method stub
   super.onCreate(savedInstanceState);  
 xxxTest();
}

3.在cocos2dx,c++代码中定义xxxTest()函数

#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)  
extern "C"
{
void Java_com_xxx_xxxActivity_xxxTest(JNIEnv *env,jobject thiz)//com_xxx_xxxActivity为应用包名,xxxTest为函数名
    {
        //在这里处理相应的逻辑  
    }

}

你可以把这段代码写在cocos工程 jni/hellocpp/main.cpp下

namespace {
std::unique_ptr<AppDelegate> appDelegate;
}

void cocos_android_app_init (JNIEnv* env, jobject thiz) {
    LOGD("cocos_android_app_init");
    appDelegate.reset(new AppDelegate());
}
如上。

猜你喜欢

转载自blog.csdn.net/liu943367080/article/details/79557921
今日推荐