您的位置:首页 > 移动开发 > Android开发

Android Jni之把Hello.c改为Hello.cpp

2016-06-09 21:56 357 查看
1、改Android.mk文件

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)
#编译生成的文件的类库叫什么名字
LOCAL_MODULE    := hello
#要编译的c文件
LOCAL_SRC_FILES := Hello.cpp

include $(BUILD_SHARED_LIBRARY)


二、改Hello.c里的方法,

1)把(*env)->改为env->

2)把NewStringUTF(env, cstr);改为NewStringUTF(cstr);

3)引入#include “com_android_imooc_jni_JniActivity.h”头文件

#include <stdio.h>
#include <stdlib.h>
#include <jni.h>
#include <string.h>
#include "com_android_imooc_jni_JniActivity.h"
jstring Java_com_android_imooc_jni_JniActivity_helloFromC(JNIEnv* env,
jobject obj) {
//c语言的字符串
char* cstr = "hello from c";
//把C语言的字符串转换成java的字符串
// jstring     (*NewStringUTF)(JNIEnv*, const char*);
//  jstring jstr = (*env).NewStringUTF( cstr);
jstring jstr = env->NewStringUTF( cstr);
return jstr;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android jni