加载软件包(JNI)时出错-无法找到符号"__aeabi_memcpy" [英] Error loading package (JNI) - cannot locate symbol "__aeabi_memcpy"

查看:674
本文介绍了加载软件包(JNI)时出错-无法找到符号"__aeabi_memcpy"的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试对示例应用程序进行一些稍微的修改( dlib ).该示例使用一个C ++库,该库使用JNI(其.so文件)进行调用.该示例随附的库可以正常工作.我重新编译了该库,但现在它不会加载它,并引发此错误:

I am working on a sample app that I'm trying to modify slightly (dlib). The sample uses a C++ library that is called using JNI (its a .so file). The library that comes with the sample works fine. I recompiled that library but now it won't load it, and it throws this error:

dlopen failed: cannot locate symbol "__aeabi_memcpy" referenced by "/data/app/com.tzutalin.dlibtest-1/lib/arm/libpeople_det.so"

我以为目标SDK之间不匹配,因此我确保将所有内容都设置为SDK版本24,但仍然会收到此错误.

I thought it was a mismatch between the target SDK, so I made sure everything was set to SDK version 24, but I still get this error.

有什么想法吗?我正在Windows 10上使用Android Studio.

Any ideas? I'm using Android Studio on Windows 10.

谢谢.

推荐答案

这是由全新的Nougat(24)SDK引入的android studio中的一个新BUG,如果您将所有内容回滚到棉花糖(23)都可以.直到Android Studio团队对此进行修复.

This is a new BUG in android studio introduced by the brand new Nougat (24) SDK, if you Rollback everything to Marshmallow (23) all will be fine. until the Android Studio Team Fix that.

问题:如果您使用(24)和Targeting(24)进行编译,并使用(23)将apk安装在设备中,则该设备将找不到您的库,但是,如果您安装了其他任何设备版本2.33至5和7/牛轧糖(棉花糖除外)中的apk.一切都会很好.经过测试.

Problem: If you compile With (24) And Targeting (24) and install the apk in a device with (23), the device will not found your library, BUT, if you install the apk in any other device version 2.33 to 5, and 7/Nougat ( except marshmallow ). all will work fine. TESTED.

解决方案:使用(23)和Targeting(23)进行编译,然后坐下来等待Fix.经过测试.

Solution: Compile With (23) and Targeting (23), and sit down&wait for the Fix. TESTED.

我的环境:我在上周进行了所有Android Studio更新. (具有最新模拟器的NDK 13,牛轧糖和棉花糖,以及Android 4、5、6的真实设备.)

My Environment: i made all Android Studio updates in the last week. ( NDK 13, Nougat and Marshmallow with latest Emulators, and real devices android 4, 5, 6.).

希望Android Studio会听到有关此问题的信息,因为如果不尽快解决此问题,它将在接下来的几周内成为Play商店的噩梦.给棉花糖使用者.

Hope the Android Studio will hear about this problem, because if it is not fixed soon, will be a nightmare in the coming weeks in play store. for the marshmallow users.

编辑:升级到Android Studio 2.2(2016年9月15日版本#AI-145.3276617)后,发布日期(9月19日).我能够以24进行编译,以24为目标,并且可以在每台Android Gingerbread To Nougat设备中运行.两者都是仿真的和真实的.就像应该的那样.

EDIT: After upgrading To Android Studio 2.2 (Build #AI-145.3276617 on september 15 2016) the day was released ( September 19 ). i was able to Compile with 24, targeting 24 and running in every device Android Gingerbread To Nougat. both, Emulated and Real. Just as it should be.

这篇关于加载软件包(JNI)时出错-无法找到符号"__aeabi_memcpy"的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆