<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                ?android支持使用NDK開發C程序,關于配置NDK環境問題應該不用再贅述了,這個網上有很多,這里通過一篇實例來講述簡單的JNI開發,大家可以參考這篇文章[(Get Your Eclipse-Integrated NDK On!)](http://blog.csdn.net/xyz_lmn/article/details/6050392)搭建Eclipse編譯C語言為so文件的開發環境。 native方法實現步驟如下: 1、在Java中聲明native()方法,然后編譯(javac);? 2、用javah產生一個.h文件;? 3、編寫包含.h文件的c文件 4、編譯c文件 5、使用編譯成功的so文件。 第一步: 1、聲明native方法 ~~~ public class Printf_Jni { static { System.loadLibrary("com_nedu_jni_helloword_printf-jni"); } public native void printHello(); } ~~~ 2、javac編譯 進入java文件所在路徑,調用javac命令,如圖: ![](https://box.kancloud.cn/2016-01-14_56971f3f15c6c.gif) 第二步:使用javah命令生成.h頭文件,如圖: ![](https://box.kancloud.cn/2016-01-14_56971f3f2a6de.gif) 這個要回到src目錄下,不知道什么原因,如果在上面的javac路徑下會報錯,如圖: ![](https://box.kancloud.cn/2016-01-14_56971f3f38718.gif) 使用javah命令生成的頭文件如下: ~~~ public class Printf_Jni { static { System.loadLibrary("com_nedu_jni_helloword_printf-jni"); } public native void printHello(); } ~~~ 第三步:編寫c文件,代碼如下: ~~~ #include<stdio.h> #include <stdlib.h> #include "com_nedu_jni_helloword_Printf_Jni.h" JNIEXPORT void JNICALL Java_com_nedu_jni_helloword_Printf_1Jni_printHello (JNIEnv *e, jobject j) { printf("Hello world!"); } ~~~ 第四步,書寫Android.mk文件,編譯c文件 Android.mk文件如下: ~~~ LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := com_nedu_jni_helloword_printf-jni LOCAL_SRC_FILES :=Printf_Jni.c include $(BUILD_SHARED_LIBRARY) ~~~ 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!)](http://www.devdiv.com/home.php?mod=space&uid=14682&do=blog&id=2389)的介紹就可以在Eclipse編譯了。 第五步:使用so文件: 通過下面的代碼加載so文件 ~~~ System.loadLibrary("com_nedu_jni_helloword_printf-jni"); ~~~ 通過下面的代碼加載so文件通過下面的代碼加載so文件 調用如下: ~~~ Printf_Jni print=new Printf_Jni(); ~~~ ~~~ print.printHello(); ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看