Android - JNI添加标准C++文件
来源:互联网 发布:windows 2008 编辑:程序博客网 时间:2024/06/07 04:10
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_staticAPP_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 := HelloMyJniLOCAL_SRC_FILES := HelloMyJni.cpp#LOCAL_C_INCLUDES += ./LOCAL_SRC_FILES += ./sayname.cppinclude $(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());}
5 1
- Android - JNI添加标准C++文件
- Android 添加JNI文件到源码中
- Android 添加JNI文件到源码流程
- Android项目JNI层C/C++文件中添加LOG信息
- Android Studio 3.0 Jni开发环境配置 cmake编译 多个C/C++文件添加配置
- JNI文件添加
- android 添加jni函数
- Android Studio Gradle项目中添加JNI so文件
- Android jni开发 eclipse 删除额外添加的.so文件
- Android Studio项目如何添加.so文件(JNI)
- Android jni开发 eclipse 删除额外添加的.so文件
- C++与C添加标准库头文件的形式
- android studio实现Jni(C/C++)单步调试方法步骤-标准配置教程
- android studio实现Jni(C/C++)单步调试方法步骤-标准配置教程
- android NDK jni下的c文件 Unresolved inclusion
- android NDK jni中c和c++文件报错
- android NDK jni下的c文件 Unresolved inclusion
- android NDK jni下的c文件Unresolved inclusion
- UITabBarController背景图片和适配
- BSS 数据段 堆 堆栈
- Object Foundation框架 第一课
- POJ 2828——Buy Tickets(树状数组,线段树——逆序遍历)
- No.15 Xcode(5.1.x) libxml2
- Android - JNI添加标准C++文件
- 深入Mysql字符集设置
- 分数类
- <转>java设计模式:策略模式
- Ubuntu下ARM开发.ld链接文件的学习笔记
- jQuery ui draggable 拖拽元素
- jbpm4自动创建表不成功--在MySql中
- bitnami-redmine-SVN-Apache
- Oauth2.的简介