答案 0 :(得分:4)
检查报告的同一问题: https://github.com/litehelpers/Cordova-sqlcipher-adapter/issues/41
现在它已经解决了。
供参考:
sqlcipher/android-database-sqlcipher#216
您可以在以下链接中查看SQLCipher for Android Release-Android N支持:
https://discuss.zetetic.net/t/sqlcipher-for-android-release-android-n-support/1465
修改强>
您也可以查看 NDK Apps Linking to Platform Libraries用于私人图书馆使用。
检查" 更新您的应用"提供修复这些类型错误的步骤的部分。
答案 1 :(得分:0)
您可能正在使用直接访问私有API的本机库。问题描述如下。
来自Android开发者博客https://android-developers.googleblog.com/2016/06/android-changes-for-ndk-developers.html:
私有API(自API 24起强制执行)
本机库必须仅使用公共API http://developer.android.com/ndk/guides/stable_apis.html?utm_campaign=android_discussion_ndkchanges_062716&utm_source=anddev&utm_medium=blog,并且不得链接到非NDK平台库。从API 24开始,强制执行此规则,并且应用程序不再能够加载非NDK平台库。该规则由动态链接器强制执行,因此无论代码尝试加载它们的方式如何,都无法访问非公共库:System.loadLibrary(...),DT_NEEDED条目以及对dlopen(...)的直接调用将以完全相同的方式失败。
(...)
潜在问题:从API 24开始,动态链接器不会加载私有库,从而阻止加载应用程序。
解决方案:重写您的本机代码,仅依赖公共API。作为短期解决方法,可以将没有复杂依赖项的平台库(libcutils.so)复制到项目中。作为长期解决方案,必须将相关代码复制到项目树中。不应从本机代码访问SSL / Media / JNI内部/绑定器API。必要时,本机代码应调用适当的公共Java API方法。
NDK中的
platforms/android-API/usr/lib
下提供了完整的公共库列表。
正如其他答案所指出的,似乎这个API 24问题已经解决了。