參考博主文章鏈接:
http://blog.csdn.net/cheng1204456236/article/details/51752887 ,特此鳴謝!
開發環境:
windows10
AS2.1.2
首先安裝NDK,
安裝完後,新建一個空項目。
點擊下一步,知道新建一個新項目。
新建好的項目如下:
檢測local.properties 文件裏面是否有ndk的路徑,沒有加上。
然後看app\build.gradle
加上這段代碼
ndk{
moduleName “MyLibrary”
}
sourceSets.main{
jni.srcDirs = []
jniLibs.srcDir “src/main/libs”
}
別加錯位置了。
在gradle.properties中添加
Android.useDeprecatedNdk=true
然後新建JNI文件夾。
下面開始配置工具,
配置這3個工具,
配置工作結束。
可以在tool下面看到自己添加的3個工具。
下面開始添加文件。
新建 一個class文件,並加上如下代碼,
這個是定義JNI函數接口以及加載編譯c/c++ 文件的庫文件。
新生成一個.h 頭文件。把這個文件直接拖到jni下面去。
windows下 android studio 的NDK開發環境配置(2)
在JNI文件夾下面添加 .c文件,以及make文件。
test.c 如下
#include "test_myapplication_myndk.h"
JNIEXPORT jint JNICALL Java_test_myapplication_myndk_getint
(JNIEnv * env, jobject obj){
return 100;
}
- 1
- 2
- 3
- 4
- 5
- 6
- 1
- 2
- 3
- 4
- 5
- 6
Android.mk
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := MyLibrary
LOCAL_SRC_FILES =: test.c
include $(BUILD_SHARED_LIBRARY)
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 1
- 2
- 3
- 4
- 5
- 6
- 7
application.mk
APP_MODULES := MyLibrary
APP_ABI := all
- 1
- 2
- 1
- 2
開始build ndk
目錄下面多了libs,obj目錄。
然後就開始使用我們的接口。
在xml中添加textview的id
在mainactivity 中添加如下代碼
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView tv = (TextView) findViewById(R.id.tv);
int r = new myndk().getint();
tv.setText(Integer.toString(r));
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
ok。可以測試了。
參考這篇mac下配置修改的。
http://blog.csdn.net/cheng1204456236/article/details/51753701