我正在開發一個開源的模擬器項目,它有多個可自定義的本地插件。這些插件被構建爲本地共享對象庫(.so文件),並通過JNI在本地和Java之間提供各種接口。我們需要一種在應用程序安裝後隨時導入這些.so文件的方法,而不是將APK分發到創建的每個插件中,爲了讓人們可以構建自己的自定義插件,我需要一種方法來隨時導入這些.so文件。如何在Android中的運行時導入共享對象庫?
我發現我可以將文件複製到文件夾/ data/data/[package_name],但不是lib /子文件夾(因爲它屬於「系統」組)。爲了在Java中使用JNI接口,我必須調用System.loadLibrary(libname);但是,這似乎需要.so文件位於lib /子文件夾中。解決這個問題的唯一方法就是要求用戶擁有一臺根植設備。有沒有另外一種方法來完成這個?
啊哈,我不知道System.load是用於這個。猜猜我應該在發表問題之前進行研究。謝謝您的幫助! – paulscode 2012-04-27 01:51:35