2012-06-10 61 views
5

我應該創建一個易於使用的SDK,所以我需要它在一個jar文件中。資源有問題,但包括NDK創建的庫(通常放在「libs/armeabi」文件夾中)的「.so」文件又如何?用「so」文件創建一個SDK(單個jar文件)

是否可以將「.so」文件添加到jar文件中,以便使用SDK的jar文件的用戶不需要將其添加到他的項目中的libs文件夾中?

如果是這樣,如何,如果沒有,是否有任何解決方法?

澄清:使用SDK的人應該只使用一個jar文件,該文件將包含使用SDK所需的全部內容,包括「.so」文件。

請注意,如果我將libs文件夾(和其中的「.so」文件)放入使用SDK的項目中,它工作得很好。如果我將SDK項目用作Android項目,情況也是如此。

回答

3

其實AndroidADT 17已經來了。事實上,當您創建一個library project並將其導入到另一個項目中時,Android會創建一個jar file。對於native library也是如此。當您構建項目庫時很簡單,armeabi文件夾也將包含在jar中。

+0

那麼這正是我所做的。我正在使用一個Android庫,並打算只給自動創建的jar。然而,儘管「.so」文件在裏面,但它給了我這個例外。當我將libs文件夾設置爲構建路徑 –

+0

中的源代碼時,會發生這種情況。在通過構建路徑將libs文件夾作爲源文件夾後,我得到了一個不同的錯誤,這次是編譯時間:「庫'Library.jar'包含不會在設備上運行的本地庫。 –

+0

我不明白。他們說那是不可能的,不是? –