AndroidStudio入門jni

Android.mk:java

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := JniTest
LOCAL_SRC_FILES =: TestSayHello.c
include $(BUILD_SHARED_LIBRARY)

Application.mkandroid

APP_ABI := all
APP_PLATFORM := android-8

 

TestSayHello.cui

#include "com_utils_NDKUtils.h"

/*
    方法實現
 * Class:     com_utils_NDKUtils
 * Method:    sayHello
 * Signature: ()Ljava/lang/String;
 */
JNIEXPORT jstring JNICALL Java_com_utils_NDKUtils_sayHello
  (JNIEnv *env, jclass jobj){

    return (*env)->NewStringUTF(env,"hello jni");

  }

 

在defaultConfig裏面配置命令行

ndk{
    moduleName "JniTest"
}
sourceSets.main{
    jni.srcDirs = []
    jniLibs.srcDir "src/main/libs"
}

我是用命令行生成.so庫的,因此我在命令行配置ndkstring

而後進入到jni目錄下 ndk-build生成so文件io

最後運行程序class

相關文章
相關標籤/搜索