<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>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                Java JNI的本意是Java Native Interface(Java本地接口),它是為了方便Java調用C、C++等本地代碼所封裝的一層接口。我們都知道,Java的優點是跨平臺,但是作為優點的同時,其在和本地交互的時候就出現了短板。Java的跨平臺特性導致其本地交互的能力不夠強大,一些和操作系統相關的特性Java無法完成,于是Java提供了JNI專門用于和本地代碼交互,這樣就增強了Java語言的本地交互能力。通過Java JNI,用戶可以調用用C、C++所編寫的本地代碼。 NDK是Android所提供的一個工具集合,通過NDK可以在Android中更加方便地通過JNI來訪問本地代碼,比如C或者C++。NDK還提供了交叉編譯器,開發人員只需要簡單地修改mk文件就可以生成特定CPU平臺的動態庫。使用NDK有如下好處: * (1)提高代碼的安全性。由于so庫反編譯比較困難,因此NDK提高了Android程序的安全性。 * (2)可以很方便地使用目前已有的C/C++開源庫。 * (3)便于平臺間的移植。通過C/C++實現的動態庫可以很方便地在其他平臺上使用。 * (4)提高程序在某些特定情形下的執行效率,但是并不能明顯提升Android程序的性能。 由于JNI和NDK比較適合在Linux環境下開發,因此本文選擇Ubuntu 14.10(64位操作系統)作為開發環境,同時選擇AndroidStuio作為IDE。至于Windows環境下的NDK開發,整體流程是類似的,有差別的只是和操作系統相關的特性,這里就不再單獨介紹了。在Linux環境中,JNI和NDK開發所用到的動態庫的格式是以.so為后綴的文件,下面統一簡稱為so庫。另外,由于JNI和NDK主要用于底層和嵌入式開發,在Android的應用層開發中使用較少,加上它們本身更加側重于C和C++方面的編程,因此本章只介紹JNI和NDK的基礎知識,其他更加深入的知識點如果讀者感興趣的話可以查看專門介紹JNI和NDK的書籍。
                  <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>

                              哎呀哎呀视频在线观看