Привязка к c # некоторого java-кода, который использует библиотеки .so - PullRequest
0 голосов
/ 04 февраля 2019

Есть несколько библиотек .so, и Java-код использует их для Android.

Я собираю этот код Java в Android Studio, чтобы получить файл .aar.Мне нужно сделать привязку для кода C # для Xamarin.Android с помощью Visual Studio.Таким образом, хотя связывание с java работает хорошо, код java генерирует исключение:

java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader

Посмотрев полное сообщение об исключении, я получил эту javaКод не может найти .so файлы.В проекте Android Studio .so библиотеки размещаются по адресу ./lib/armeabi-v7a/, и Java-код работает хорошо.

Итак, вопрос в том, куда мне поместить .so библиотеки в библиотеке привязок C #?Какой-то внутренний аромат подсказывает мне, что я должен положить его куда-нибудь - так работают библиотеки.

Я пытался поместить библиотеки .so в каталог с моим .dll, также глубже в ./lib/armeabi-v7a/, но на самом деле это не помогло - исключение было таким же.Я пытался поместить их в каталог с моим файлом .aar, а также в более глубокий каталог в ./lib/armeabi-v7a/, но это своего рода шаманизм.это тоже не помогло.

1 Ответ

0 голосов
/ 07 февраля 2019

проблема была в том, как я пытался проверить работу программы.Мой эмулятор Android не имел поддержки armeabi-v7a.После того, как я попытался изменить настройки своего эмулятора.это стало медленным и очень медленным.Проблема заключалась в том, чтобы протестировать приложение на реальном устройстве.

...