我已經建立了AOSP系統服務按照本教程: http://www.androidenea.com/2009/12/adding-system-server-to-android.html導入自定義,這樣在文件到AOSP
現在我想使用預編譯的.so文件,並不能找出哪裏把它,所以我的代碼將能夠訪問它。
所以,我創建了framewaork /基/庫/ my_folder/ ,並把有兩個文件夾: my_lib.so android.mk
的android.mk的內容是:
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE:= my_lib
LOCAL_MODULE_TAGS := optional
include $(BUILD_SHARED_LIBRARY)
make運行沒有錯誤,但是當代碼嘗試通過以下方式加載庫時: System.loadLibrary(「my_lib」);
我得到這個錯誤:
06-27 13:58:55.581:E/AndroidRuntime(806):java.lang.UnsatisfiedLinkError中:通過引起圖書館my_lib沒有找到;嘗試[/vendor/lib/my_lib.so,/system/lib/my_lib.so]
所以我增加了這樣的文件出/目標/產品/通用/系統/庫 但得到了同樣的錯誤。
因此,我應該在哪裏放置my_lib.so文件?並且是一個android.mk需要它嗎? 也許我應該在系統的某個地方註冊它?
在此先感謝!
或者在你的device.mk文件中添加你的庫到「PRODUCT_PACKAGES + = \ my_lib.so」 –