使用lib sysutils构建DVM作为SHARED_LIBRARY

时间:2014-05-02 21:15:36

标签: android dalvik

我正在实施一个系统来跟踪来自任何APK的所有API调用。我的想法是在dvmResolveMethod,JNICall等中添加对我的模块的调用...这个模块在DVM中,在同一个库中实现。所有跟踪都发送到进程守护程序以解析和检测恶意软件。

守护进程和模块之间我正在使用套接字。使用FrameworkListener使用服务方式实现守护进程以创建“命名”套接字。现在我需要使用模块中的套接字,我想使用FrameworkClient。所以我想添加包含libsysutils。

在Dvm.mk文件中添加“LOCAL_SHARED_LIBRARIES:= libsysutils”会出现此错误:

make: * 没有规则可以使目标out/host/linux-x86/obj/SHARED_LIBRARIES/libsysutils_intermediates/export_includes', needed by out / host / linux-x86 / obj / SHARED_LIBRARIES / libdvm_intermediates / import_includes'。停止。

我认为错误是由编译顺序引起的,所以也许我应该尝试更改它并在DVM之前编译lib但是我不知道我该怎么做。 Android的makefile对我来说太过分了。

非常感谢任何帮助。

由于

1 个答案:

答案 0 :(得分:0)

system / core / libsysutils仅在目标设备中编译。但是dalvik将在目标和主机设备中编译。在这里,我建议您关闭dalvik vm主机平台编译。

dalvik / vm / Android.mk:将WITH_HOST_DALVIK指定为false。

你应该先mm @ system / core / libsysutils。