Android JNI入门第一篇——HelloJni
android支持使用NDK開發C程序,關于配置NDK環境問題應該不用再贅述了,這個網上有很多,這里通過一篇實例來講述簡單的JNI開發,大家可以參考這篇文章(Get Your Eclipse-Integrated NDK On!)搭建Eclipse編譯C語言為so文件的開發環境。
??????? native方法實現步驟如下:
??????? 1、在Java中聲明native()方法,然后編譯(javac);?
??????2、用javah產生一個.h文件;?
????? 3、編寫包含.h文件的c文件
????? 4、編譯c文件
????? 5、使用編譯成功的so文件。
?
?????? 第一步:
??????????????1、聲明native方法
?????????????????
[java]?view plaincopyprint??????? 2、javac編譯
??????????? 進入java文件所在路徑,調用javac命令,如圖:
?????????????
第二步:使用javah命令生成.h頭文件,如圖:
???????????
???? 這個要回到src目錄下,不知道什么原因,如果在上面的javac路徑下會報錯,如圖:
???????
???? ?使用javah命令生成的頭文件如下:
[cpp]?view plaincopyprint?第三步:編寫c文件,代碼如下:
[cpp]?view plaincopyprint?第四步,書寫Android.mk文件,編譯c文件
??????? Android.mk文件如下:
?????
[plain]?view plaincopyprint?
LOCAL_MODULE??? := com_nedu_jni_helloword_printf-jniLOCAL_MODULE??? := com_nedu_jni_helloword_printf-jniLOCAL_MODULE??表示so文件名
LOCAL_SRC_FILES 需要編譯的文件
按照這篇文章(Get Your Eclipse-Integrated NDK On!)的介紹就可以在Eclipse編譯了。
第五步:使用so文件:
??? 通過下面的代碼加載so文件
[html]?view plaincopyprint?
通過下面的代碼加載so文件通過下面的代碼加載so文件
調用如下:
[java]?view plaincopyprint??
?
?
?
/**
* @author 張興業
* 郵箱:xy-zhang#163.com
* android開發進階群:278401545
*
*/
總結
以上是生活随笔為你收集整理的Android JNI入门第一篇——HelloJni的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: What every programme
- 下一篇: 简单的http服务器示例