Android Studio建立jni開發環境

jopen 9年前發布 | 88K 次閱讀 Android Studio開發工具 Android Studio

Step: 1. 添加native接口注意寫好native接口和System.loadLibrary()即可了,并無特別之處。

Step: 2.執行Build->Make Project
生成了.class文件..class文件的生成路徑是在 app_path/build/intermediates/classes/debug下的. 這個在android studio里面看不到, 到文件管理器里面翻到的, 里面還有好多東西。

Step: 3.javah生成c頭文件
點擊"View->Tool Windows->Terminal",即在Studio中進行終端命令行工具.執行如下命令生成c語言頭文件。

這 里需要注意的是要進入 <Project>\app\src\main的目錄下執行javah命令,為的是生成的 .h 文件同樣是在<Project>\app\src\main路徑下(jni下面),可以在Studio的工程結構中直接看到。


操作命令:

javah -d jni -classpath <SDK_android.jar>;<APP_classes> <class>
 

javah -d jni -classpath c:\Users\Ximei\AppData\Local\Android\sdk1\platforms\android-21\android.jar;..\..\build\intermediates\classes\debug com.example.jnitest
好長一串,  好家伙,  這通敲.

然后就看到<project>\app\src\main\jni\com_example_jnitest.h出現了.

Step: 4.編輯c文件

在<project>\app\src\main\jni\jnitest.c文件中實現頭文件中的函數。
 

Step: 5.配置NDK

這一步包括兩個動作:
 

1.指明ndk路徑
在local.properties中添加ndk目錄, ndk目錄中不可包含空格.
ndk.dir=C\:\\android-ndk-r10d


2. 修改build.gradle配置

工程中共有兩個build.gradle配置文件,我們要修改的是在<Project>\app\build.gradle這個文件。為其在defaultConfig分支中增加上
    ndk {
        moduleName "jnitest"

    }

3.  添加Application.mk  和 Android.mk文件

Application.mk
APP_PROJECT_PATH := $(call my-dir)/project
APP_MODULES      := nativebt
 

Android.mk
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE    := jnitest
LOCAL_SRC_FILES :=  jnitest.c

LOCAL_DEFAULT_CPP_EXTENSION := cpp

include $(BUILD_EXECUTABLE)

include $(BUILD_SHARED_LIBRARY)

然后進行編譯,  會出現no rule to make target....錯誤,  按照網上的經驗,  生成一個空的empty.c文件,  錯誤通過. (嘖, 2014年3月的bug,  居然還沒有fix版)
終于編譯成功, 編譯出來的庫文件在如下路徑:
</span></span>
<project>\app\build\intermediates\ndk\debug\lib\  共7個目錄, 7種架構吧。

至此, 開發環境建立成功。
</span></span>

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!