服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Android - c++ mk文件出错Jni调用产生java.lang.UnsatisfiedLinkError错误解决方法

c++ mk文件出错Jni调用产生java.lang.UnsatisfiedLinkError错误解决方法

2021-02-18 15:18Android开发网 Android

错误产生在我把方法从c语言转为c++语言后产生的,后来检查到这种错误是因为mk文件出错,加载c文件和加载c++的文件所用的代码不一样,下面请看

错误为:

c++ mk文件出错Jni调用产生java.lang.UnsatisfiedLinkError错误解决方法

Android.mk文件

c++的调用方法为:

复制代码 代码如下:


LOCAL_PATH := $(call my-dir)

 

include $(CLEAR_VARS)

LOCAL_MODULE := TestNdk

LOCAL_CPP_EXTENSION :=com_ndk_test_JniClient.cpp

include $(BUILD_SHARED_LIBRARY)

 

c中的调用方法:

复制代码 代码如下:

LOCAL_SRC_FILES := com_ndk_test_JniClient.c

 

另一个使用变量的方法,一直成功运行

c++正确的mk文件:

 

复制代码 代码如下:


LOCAL_PATH := $(call my-dir)

 

include $(CLEAR_VARS)

LOCAL_MODULE := TestSm3

LS_CPP=$(subst $(1)/,,$(wildcard $(1)/*.cpp))

LOCAL_SRC_FILES := $(call LS_CPP,$(LOCAL_PATH))

include $(BUILD_SHARED_LIBRARY)

 

延伸 · 阅读

精彩推荐