我按照本教程构建了一个AOSP系统服务:
http://www.androidenea.com/2009/12/adding-system-server-to-android.html
现在我想使用预编译的.so文件,无法确定放在哪里,以便我的代码能够访问它.
所以,我在framewaork / base / libs / 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]
所以我将so文件添加到out / target / product / generic / system / lib
但得到了同样的错误.
那么我应该在哪里放置my_lib.so文件?它是一个android.mk需要它吗?
也许我应该在系统的某个地方注册?
提前致谢!