Как добавить общую библиотеку поставщика в приложение android ndk - PullRequest
1 голос
/ 27 февраля 2020

Я добавил библиотеку в папку Android aosp vendor и успешно создал общие файлы lib (скажем, libmyvendor.so). И проверил, что .so файлы созданы под system/lib и system/lib64. Перепрошита на устройстве и работает нормально здесь.

Для отладки моего приложения ndk я скопировал .so файлы в Android путь sdk / ndk / {versionNumber} / platform / android -28 / арка-x86 / USR / Lib. Также в папке archx86_64 / usr / lib64. Сделал недействительным и перезапустите Android Studio. Теперь я пытаюсь найти или добавить библиотеку libmyvendor в моем приложении ndk, используя функцию cmake

find_library(mVendor libmyvendor)

Tried myvendor вместо libmyvendor . В обоих случаях cmake не смог найти его.

Затем попытался скопировать файлы libmyvendor.so в приложение ndk (в jniLibs / x86 / и x86_64 /). Скомпилировано, но app cra sh во время выполнения, говоря

UnSatifiedLinkError: dlopen failed library 'libcrypto.so' not found

Где libcrypto.so необходим как зависимый от проекта libmyvendor. И я застрял здесь.

Согласно моему предположению, libmyvendor является частью системных библиотек. NDK должен быть в состоянии найти его, используя find_library(), так же, как мы находим liblog.so. Но это не может найти. Я что-то пропустил или испортил?

...