2017-04-04 48 views

回答

3

檢查報告相同問題: https://github.com/litehelpers/Cordova-sqlcipher-adapter/issues/41

現在它已經解決了。

參考:

sqlcipher/android-database-sqlcipher#216

您可以檢查SQLCipher爲Android發佈,Android的n支持以下鏈接:

https://discuss.zetetic.net/t/sqlcipher-for-android-release-android-n-support/1465

編輯:

你可以還請檢查 NDK Apps Linking to Platform Libraries私人圖書館使用。

選中「更新您的應用」部分,其中提供瞭解決這些類型錯誤的步驟。

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問題已經解決。

相關問題