乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      [z]看來真不能直接將.so文件直接添加到Android的JAR包了

       techres 2012-02-16

      看來真不能直接將.so文件直接添加到Android的JAR包了

      如果直接在一個JAR中的/libs/armeabi下放個XXX.SO文件,然后導(dǎo)出成JAR包的后,如A.JAR,

      在一個Android的程序中引用這個A.JAR,那么編譯的時候就會出現(xiàn)一下的錯誤:

      The library 'A.jar' contains native libraries that will not run on the device.
      The following libraries were found:
      - libs/armeabi/libXXX.so

        網(wǎng)上搜素索了下,還是沒有找到解決方法。

      只能采用如下的方式:

      1.像科大訊飛那樣(/Msc/assets/lib/msc.jet:文件前4個字節(jié)為:.ELF,而且文件末尾可以看到類是JNI的函數(shù)

      直接將.SO文件改個擴展名,然后放到assert中,導(dǎo)出到JAR中,然后在啟動的時候/或者首次被調(diào)用的時候?qū)⑵淇截惖?/p>

      調(diào)用程序的目錄下,手動加載SO庫文件

      2.就是直接將JAR中的.SO文件放到目標(biāo)程序的/libs/armeabi下,即可。

      (以上提到的.SO文件都是針對ARM架構(gòu)的,如果是x86的,注意將上文中的相應(yīng)目錄修改成/libs/x86/目錄即可)

       

      總之:Android將某個工程打成JAR包的時候,最好只包括源代碼,另外就是可以包含一些文件,如assert或者自己定義的一些文件個數(shù),

      但不要保護(hù)資源文件(/res下所有文件內(nèi)容都不要放在JAR包中)。

        本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多