我正在实施一个系统来跟踪来自任何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对我来说太过分了。
非常感谢任何帮助。
由于
答案 0 :(得分:0)
system / core / libsysutils仅在目标设备中编译。但是dalvik将在目标和主机设备中编译。在这里,我建议您关闭dalvik vm主机平台编译。
dalvik / vm / Android.mk:将WITH_HOST_DALVIK
指定为false。
你应该先mm @ system / core / libsysutils。