Фон
Я пытаюсь опубликовать свое приложение Tizen Wearable .NET на портале продавца Samsung.
Я использую Visual Studio 2017 с обновленным плагином Tizen и могу успешно запустить свое приложение в режиме выпуска как на эмуляторе, так и на реальном устройстве (Gear Sport), используя сертификаты автора и дистрибьютора. Мое приложение ориентировано на Tizen 4.0.
Порталу продавца Samsung требуется бинарный выпуск, но он не дает подробных инструкций, поэтому я предполагаю, что для его получения я перестраиваю решение в режиме выпуска с правильной настройкой профиля сертификата. Полученный файл TPK находится в папке bin/Release
.
Изучая двоичный архив TPK, я вижу все свои встроенные библиотеки DLL, ресурсы, манифест и т. Д.
Эта проблема
Как только я загружаю этот двоичный файл на портал продавца Samsung и отправляю его на проверку, он не проходит автоматическую предварительную проверку из-за следующей ошибки:
[Дефект] Приложение было собрано компилятором x86. X86 означает, что приложение запускается на эмуляторе Tizen, а не на реальной цели.
[Ожидаемый результат] Пожалуйста, настройте архитектуру для активации при создании приложения. Свойства проекта -> Сборка C / C ++ -> Настройки Tizen, и вы можете проверить архитектуру имени файла вашего приложения.
например org.example.app-1.0.0-arm.tpk например org.exapmple.ap-1.0.0-x86.tpk
[Ссылка] Как правило, архитектура платформы выбирается автоматически на основе тестовой среды. Если тестовое устройство подключено через USB, Tizen IDE автоматически выбирает архитектуру руки, но если эмулятор подключен к sdb, Tizen IDE автоматически выбирает архитектуру руки.
Инструкции здесь бесполезны, поскольку я использую Visual Studio и C # .NET, а не Tizen Studio или C ++.
К отклонению прилагается файл с именем gear_core_architecture.txt
, содержимое которого просто:
Intel 80386 [libSkiaSharp.so]
Это проблемный файл? Если я просматриваю бинарный архив TPK выпуска, я обнаруживаю файл libSkiaSharp.so
внутри папок bin/runtimes/linux-x86/native
и bin/runtimes/tizen-armel/native
. Я вообще не использую SkiaSharp
в своем приложении, но мои пакеты nuget могут быть (Tizen.NET, Xamarin и т. Д.). Если посмотреть на проект Tizen-CSharp
samples, образец проекта SkiaSharp также включает эти библиотеки в свой TPK.
Я искал везде в Visual Studio и не могу изменить тип платформы для любого решения или проекта на arm
. Сейчас он строится только для Any CPU
, x86
или x64
. Я добавил компиляторы C ++ для ARM и ARM64 в Visual Studio из отдельных компонентов, но без изменений. Создание конфигурации сборки ARM
вручную мне не позволяет.
TL;DR
Как создать приложение Tizen Wearable C # .NET для платформы ARM в Visual Studio 2017 для публикации на портале продавца Samsung?