在.a文件中调用库方法

时间:2017-04-25 13:15:15

标签: android android-studio android-ndk .a

我在Android Studio 2.1.3上。

我在.a文件中的静态库二进制文件:

libconfig.a

我需要在库上调用方法签名:

CLIENT_ConfigIPCWifi(szDeviceSN,szSSID,szSSIDPassword,nWaitTime);

问题:我将如何调用该方法?

1 个答案:

答案 0 :(得分:0)

您的app / src / main / jni文件夹中需要一个Android.mk文件。看起来应该是这样的

LOCAL_PATH := $(call my-dir)

# This block is to make the NDK aware of your static library
include $(CLEAR_VARS)
LOCAL_MODULE := libconfig
LOCAL_SRC_FILES := path/to/libconfig/libconfig.a
include $(PREBUILT_STATIC_LIBRARY)

# This block is to build your C++ code that will call the method in the static library
include $(CLEAR_VARS)
LOCAL_MODULE := ThatWillCallTheMethod
LOCAL_SRC_FILES := cppFileThatWillCallTheMethod.cpp
LOCAL_STATIC_LIBRARIES := libconfig.a
include $(BUILD_SHARED_LIBRARY)

jni文件夹中,您将拥有:cppFileThatWillCallTheMethod.cpp。在该文件中,您将调用CLIENT_ConfigIPCWifi(szDeviceSN,szSSID,szSSIDPassword,nWaitTime);不知何故,你必须知道你需要包含libconfig.a中的哪些头文件。

希望这有帮助!