在Android studio 2.2中配置NDK和开发

最近Android studio 2.2版本更新带来了一些改变,其中增强了C/C++的实现。对NDK的复杂安装进行了简化,使得在Android studio2.2中可以快速实现NDK的开发。


如果使用CMake编译:


 步骤1:


创建java本地方法类myndk.java:


[java] view plain copy
public class myndk {  
    public native String getstr();  
    public native int getSums(int a,int b);  
    public native int getSum();  
    // Used to load the 'native-lib' library on application startup.  
    static {  
        System.loadLibrary("native-lib");  
    }  
}  


 步骤2:
使用命令:javah -jni com.example.cuboo.myapplication.myndk 创建myndk.java的头文件com_example_cuboo_myapplication_myndk.h


(进入项目main/java目录后使用javah命令 )


复制头文件到cpp目录下:


Android视图下:隐藏了头文件




project 视图下显示:






 步骤3:
创建hello.cpp实现本地方法文件


[cpp] view plain copy
#include <jni.h>  
#include "com_example_cuboo_myapplication_myndk.h"  
  
  
JNIEXPORT jstring JNICALL  
Java_com_example_cuboo_myapplication_myndk_getstr(JNIEnv *env, jobject instance) {  
  
    return env->NewStringUTF("hello ndk");  
}  
  
JNIEXPORT jint JNICALL  
Java_com_example_cuboo_myapplication_myndk_getSum(JNIEnv *env, jobject instance) {  
  
    return 8;  
}  
  
JNIEXPORT jint JNICALL  
Java_com_example_cuboo_myapplication_myndk_getSums(JNIEnv *env, jobject instance, jint a, jint b) {  
    return a+b;  
  
}  


 步骤4:
把hello.app文件加入到CMakelists.text:
[plain] view plain copy 
add_library( # Sets the name of the library.  
             native-lib  
  
             # Sets the library as a shared library.  
             SHARED  
  
             # Provides a relative path to your source file(s).  
             # Associated headers in the same location as their source  
             # file are automatically included.  
             #src/main/cpp/native-lib.cpp  
             src/main/cpp/hello.cpp)  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值