android studio ndk

来源:互联网 发布:苹果电脑恢复mac系统 编辑:程序博客网 时间:2024/05/22 20:19

Android.mk

新建目录 src/main/jni

新建文件 src/main/jni/Android.mk

LOCAL_PATH:=$(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE:=hello-jniLOCAL_SRC_FILES:=c.cppinclude $(BUILD_SHARED_LIBRARY)

新建文件 src/main/jni/Application.mk

APP_ABI := all

MainActivity.java

public class MainActivity extends AppCompatActivity {    static {        System.loadLibrary("hello-jni");    }    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        TextView tv = (TextView) findViewById(R.id.sample_text);        tv.setText(getstr());    }    public native String getstr();}

根据 native 方法生成 代码

新建文件 src/main/jni/c.cpp

#include <jni.h>extern "C"JNIEXPORT jstring JNICALLJava_thereisnospon_ndkdemo_MainActivity_getstr(JNIEnv *env, jobject instance) {    // TODO    return env->NewStringUTF("value");}

app 下的 build.gradle 的 android 下 添加

 sourceSets {        main {            jniLibs.srcDirs = ['src/main/libs']        }    }