Я потратил некоторое время на изучение Xamarin и до сих пор считаю его отличным инструментом. Теперь, когда я наконец приступил к выпуску своего программного обеспечения, я столкнулся с проблемой. Только одна версия моей библиотеки C ++ включена в пакет Android (Arm64).
Я работаю с Visual Studio 2017. Я добавил код C ++ как «C ++ Shared Library (Android, IOS)», чтобы он компилировался как часть моего решения. Затем я добавляю ссылку на мой проект xamarin android в проект android C ++.
Это компилирует dll и хорошо работает во время разработки, но когда я прихожу выпустить его с опцией «Архив», все, что я получаю, это одна dll для текущего активного ABI.
Я думал, что это можно решить, выполнив пакетную сборку всех ABI, но, к сожалению, это не сработало.
У меня все опции ABI отмечены в расширенных опциях проектов android, и я не отмечал опцию «создавать отдельные пакеты для каждого ABI», поэтому я ожидаю увидеть файл .so в каждой из архитектурных папок APK.
Кто-нибудь еще сталкивался с этой проблемой раньше? Я в растерянности относительно того, что мне нужно делать после прохождения всей документации Xamarin и поиска в Интернете. Я на самом деле не хочу идти по пути добавления файлов .so непосредственно в качестве контента к проекту, поскольку я все еще активно развиваюсь, и наличие зависимости между двумя проектами кажется правильным способом сделать это. Возможно я не прав?