Android - JNI加入标准C++文件
2015-01-30 15:57
309 查看
JNI加入标准C++文件
本文地址: http://blog.csdn.net/caroline_wendy其余參考: http://blog.csdn.net/caroline_wendy/article/details/39032551
假设须要调用标准C++库, 则须要在jni目录下, 加入Application.mk方法.
在当中声明使用C++的标准模板库(STL): APP_STL := gnustl_static
APP_STL := gnustl_static APP_CPPFLAGS := -frtti -fexceptions #APP_ABI := armeabi-v7a
然后创建加入C++源文件和头文件, 在Android.mk中声明.
头文件是目录路径(同目录能够省略), 源文件是cpp文件地址, 注意是"+=", 表明是继续加入
#LOCAL_C_INCLUDES += ./ LOCAL_SRC_FILES += ./sayname.cpp
Android.mk详细文件:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := HelloMyJni
LOCAL_SRC_FILES := HelloMyJni.cpp
#LOCAL_C_INCLUDES += ./ LOCAL_SRC_FILES += ./sayname.cpp
include $(BUILD_SHARED_LIBRARY)
头文件和源文件内容:
/* * sayname.h * * Created on: 2014年9月4日 * Author: Administrator */ #ifndef SAYNAME_H_ #define SAYNAME_H_ #include <string> using namespace std; string sayname(void); #endif /* SAYNAME_H_ */ /* * sayname.cpp * * Created on: 2014年9月4日 * Author: Administrator */ #include "sayname.h" string sayname(void) { string str = "Hello Spike and Caroline and Wendy!!!"; return str; }
接口文件就能够调用, 这些标准C++文件了.
详细调用方法:
#include <jni.h> #include "com_example_hellomyjni_JniClient.h" #include "sayname.h" JNIEXPORT jstring JNICALL Java_com_example_hellomyjni_JniClient_sayName (JNIEnv *env, jclass) { string str = sayname(); return env->NewStringUTF(str.c_str()); }
相关文章推荐
- Android - JNI添加标准C++文件
- windows+eclipse做android开发 jni找不到标准C++的头文件问题
- AndroidStudio使用CMake编译jni的C/C++文件
- 解读Android LOG机制的实现:(3)JNI及c/c++域写设备文件
- android jni方式调用c++代码并在其它app中使用生成的.so文件
- android NDK jni中c和c++文件报错
- AndroidStudio JNI开发时,javah生成c/c++头文件出现找不到android 的类文件问题
- android NDK jni中c和c++文件报错
- android NDK jni中c和c++文件报错
- android JNI开发C++代码对assets文件的访问
- C++ 标准文件流以 StringToken 为单位读取文件并全部刷新重写
- [android]第一篇blog 关于android中加入外界的db文件进行数据库访问
- android常见问题之jni读取assets资源文件(附源码)
- Android JNI调用 – 文件操作
- C++标准头文件结构介绍
- 在C和C++中把标准输出重定向到指定文件
- Android JNI入门第三篇——jni头文件分析
- 如何在ANDROID JNI 的C++中打Log
- Android编译加入第三方动态链接库文件的方法
- Android JNI入门第三篇——jni头文件分析