Почему процесс сборки в VS 2019 не создает правильный файл .so в outputDirectory для архитектуры armeabi-v7a? - PullRequest
0 голосов
/ 10 марта 2020

Я работаю над проектом, и мне нужно импортировать собственные библиотеки C ++ в мой проект C# Xamarin как ссылки, сделанные NuGet, как пакеты nupkg.

Я следовал следующему примеру:

https://docs.microsoft.com/en-us/xamarin/cross-platform/cpp/#creating -the-native-library-stage-1

И здесь вы можете увидеть весь проект: https://github.com/xamcat/mobcat-samples/tree/master/cpp_with_xamarin

И пришел к части с различными архитектурами, см. Обтекание собственной библиотеки (Этап 2). Там я скачал файлы .so и поместил их в нужные папки внутри папки libs.

Я надеялся, что как только я построю свой проект, APK будет работать на всех 4 архитектурах, как определено выше, но на самом деле нет, он работает только на x86, и я не знаю почему.

После небольшого поиска, повороты мне нужно сказать VS, чтобы он делал разные APK для разных архитектур, поэтому я так и сделал.

Сгенерировал их все в outputDirectory, см. рисунок ниже:

enter image description here

Оказывается, ни один из них не работает, но только один оригинальный APK (-Signed.apk), и только на x86 я перенес свой -armeabi-v7a.apk в свою приставку, и я получаю следующую ошибку:

enter image description here

Не удалось найти файл .so? Я открыл apk in total commander и увидел следующее:

enter image description here

Итак, VS 2019 не только не скопировал нужный файл .so в апк, но он сгенерировал совершенно новый файл. Почему?

Надеюсь, Вы можете помочь мне решить эту проблему, независимо от того, спасибо, что уделили мне время на чтение.

...