2013-01-07 43 views
0

我正嘗試使用打包在JAR文件中的庫來構建應用程序。將使用.so文件的JAR導入到一個新的Android項目中

當我打電話的我得到這個錯誤的功能之一:

異常Ljava /朗/ UnsatisfiedLinkError;在初始化thelibrary.class

拋出我已經檢查庫的源代碼,我想加載一些.so文件(的System.loadLibrary(「USB-1.0」),當它擊碎; 這些文件存在做下庫的JAR項目/ armeabi(libusb-1.0.so)

我猜的.so文件,不擠滿了JAR,讓我怎麼讓他們在我的項目中找到?

(試圖將它們複製到libs/armeabi,但拋出同樣的異常....)

I不要得到任何鏈接/構建錯誤....

謝謝。

+0

「JAR項目」是您自己的還是來自第三方的?如果「JAR項目」可以重新打包爲Android庫項目,NDK二進制文件就可以工作,正如我之前所做的那樣:https://github.com/commonsguy/cwac-anddown – CommonsWare

+0

這不是我自己的,但我可以查看該項目的來源。我應該重新編譯它嗎? – Dani

+1

與其重新打包爲Android庫項目不同的是「重新編譯」。然後從您的應用程序中引用該Android庫項目,而不是使用JAR。 – CommonsWare

回答

1

一個普通的JAR文件不能用於分發依賴於Android NDK編譯庫的東西。然而,Android庫項目可以也分發NDK編譯的庫。

but the real problem is that my app is going to be a library as well, and I don't know if I can make it a library while it is using other libraries

假設「讓庫」 ==「讓一個Android庫項目」,這是好的,只要試圖使用你的庫項目的項目也可以訪問其他庫項目。

相關問題