Max*_*Max 7 c java java-native-interface android
我试图将我的本机代码中的一些信息记录到logcat中,但我似乎无法让它工作.我搜索了遍布stackoverflow(和其他网站).
在我的原生代码中,我有#include <android/log.h>.它完全编译,没有错误.如果我不使用日志记录,我的本机代码在android中运行.
我的Android.mk:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := mylib-prebuilt
LOCAL_SRC_FILES := $(TARGET_ARCH_ABI)/mylib.so
LOCAL_EXPORT_C_INCLUDES += $(LOCAL_PATH)/$(TARGET_ARCH_ABI)
LOCAL_LDLIBS := -llog
include $(BUILD_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := gmp-prebuilt
LOCAL_SRC_FILES := $(TARGET_ARCH_ABI)/libgmp.so
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
include $(BUILD_SHARED_LIBRARY)
Run Code Online (Sandbox Code Playgroud)
我得到的错误:
java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "__android_log_write" referenced by <package>
最后,我使用的日志如下所示:
__android_log_write(ANDROID_LOG_ERROR, "Native tag", "Native text");
有人知道出了什么问题吗?