2012-06-10 9 views
5

Mam utworzyć pakiet SDK, który będzie łatwy w użyciu, więc muszę go umieścić w jednym pliku JAR. Zasoby są problematyczne, ale co z włączeniem plików ".so", które są bibliotekami utworzonymi przez NDK (zwykle umieszczane w folderze "libs/armeabi")?Utwórz SDK (pojedynczy plik JAR) z plikami "tak"

Czy można dodać pliki ".so" do pliku jar, aby osoba korzystająca z pliku jar SDK nie musiała dodawać ich do swojego folderu libs w swoim projekcie?

Jeśli tak, w jaki sposób i jeśli nie, czy istnieje jakieś obejście tego problemu?

Aby wyjaśnić: osoba korzystająca z pakietu SDK powinna używać tylko jednego pliku jar, który będzie zawierał wszystko, co jest potrzebne do korzystania z pakietu SDK, w tym pliki ".so".

Należy pamiętać, że jeśli umieściłem folder libs (i pliki ".so" w nim) do projektu, który korzysta z SDK, działa dobrze. To samo dotyczy wykorzystania projektu SDK jako projektu Android.

Odpowiedz

3

Rzeczywiście to właśnie nadszedł Android od ADT 17. W rzeczywistości, gdy utworzysz library project i zaimportujesz go do innego projektu, Android utworzy jar file. Dotyczy to również native library. Prosta po zbudowaniu biblioteki projektu, folder armeabi będzie również zawarty w jar.

+0

Cóż, to dokładnie to, co zrobiłem. używam biblioteki Androida i zamierzam podać tylko automatycznie utworzony słoik. Jednakże, nawet jeśli pliki ".so" znajdują się w środku, daje mi to wyjątek. Występuje, gdy ustawiam folder libs jako źródło w ścieżce budowania –

+0

dziwne. po utworzeniu folderu libs jako folderu źródłowego za pośrednictwem ścieżki budowania, pojawia się inny błąd, tym razem w czasie kompilacji: "Biblioteka" Library.jar "zawiera natywne biblioteki, które nie będą działać na tym urządzeniu." –

+0

Nie rozumiem. mówią, że to niemożliwe, nie? –