编码ndk main()有很多包含

时间:2012-07-03 11:08:08

标签: android c++ android-ndk

我尝试过一个简单的NDK C ++(与C语法完全不同的语法)hello world并且它有效。

现在我想用NDK编译我非常大的C ++文件。

我是否需要重命名main()?我注意到一些使用android_main()的帖子,或者我应该使用标准的package.class.method?优秀的环绕他们!它的工作原理如下:

extern "C" {
JNIEXPORT jstring JNICALL
  Java_com_optimuse_app_OptimuseAppActivity_generate(JNIEnv* env, jobject thiz){}

但是我可以将我的主题重命名为这样的东西吗?或者我应该使用android_main。互联网上的很多帖子让我很困惑。

另外,我不确定我的所有内容需要做什么。我有一堆像<algorithm.h>和我自己的.h文件。

感谢您帮助我完成约定。

1 个答案:

答案 0 :(得分:0)

好的,我让它工作:我从Mk文件中省略了我的.h文件。我将它添加到main的底部(重命名为main1),它来自java:

extern "C" {

JNIEXPORT jstring JNICALL Java_com_example_optimuse_MainActivity_generate(JNIEnv* env, jobject thiz);
};

JNIEXPORT jstring JNICALL Java_com_example_optimuse_MainActivity_generate(JNIEnv* env, jobject thiz){

    string str = main1();
    return env->NewStringUTF(str.c_str());

}
相关问题