Пример приложения Xamarin падает на iPhone Simulator - PullRequest
0 голосов
/ 10 ноября 2018

У меня следующая проблема. Я скачал этот пример проекта. Я разрабатываю в основном на Windows 10, но для iOS я приобрел виртуальную машину на macinthecloud.com

У меня есть настоящее устройство iPhone, однако, поскольку мы используем виртуальную машину, я не могу подключить его, или оно слишком сложное / дорогое. Моя цель состояла в том, чтобы создать файл ipa / zip, который я позже смогу использовать для тестов пользовательского интерфейса через Appium. Я приобрел учетную запись разработчика Apple и смог создать файл ipa.

Он установлен на симуляторе, однако, если вы попытаетесь запустить его, он сразу же вылетает. Я прочитал все, что мог найти, некоторые люди предполагают, что, вероятно, архитектура сборки неправильна. Единственная доступная опция от этой MacOS VM - ARM64. В журнале отладки симулятора была отображена следующая ошибка:

Nov 10 10:13:06 DXU684 com.apple.CoreSimulator.SimDevice.AEDE77F9-AFD7-4788-9F69-9FB6FA9CDF54[63635] (com.apple.videosubscriptionsd[64306]): Service exited with abnormal code: 1
Nov 10 10:13:08 DXU684 com.apple.CoreSimulator.SimDevice.AEDE77F9-AFD7-4788-9F69-9FB6FA9CDF54[63635] (UIKitApplication:com.xamarin.standardcontrols[0x2a65][63661][64308]): Program specified by service does not contain any valid architectures for this system.

Подскажите, пожалуйста, как я могу справиться с этой проблемой? Мне нужно запустить приложение Xamarin на симуляторе, установленном через Appium (что хорошо, думаю, это основная проблема настроек сборки)

1 Ответ

0 голосов
/ 10 ноября 2018

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

В сборке IPA нет опции x86_64, поскольку нет ни одного устройства на базе x86 для iOS, только на основе ARM.

То, что вы могли бы сделать, это собрать для simulator / x86_64 и перетащить получившееся .app в симулятор (или установить через xcrun simctl install..., что и используется всеми (Appium, Xamarin, ...) для управления тренажер).

.app создается в каталоге bin/iPhoneSimulator, пример ниже:

├── bin
│   └── iPhoneSimulator
│       └── Debug
│           ├── device-builds
│           │   ├── iphone11.4-12.0
│           │   │   ├── ios_XXXX.app
│           │   └── iphone11.4-12.1
│           │       ├── ios_XXXX.app

Примечание : сборка через Xcode 10.1 / iOS 12.1 / Xamarin.iOS 12.2.?.? .app выдаст ошибку .plist при установке через перетаскивание, но не при установке через simctl. Это не происходит в более ранних версиях Xamarin.iOS 12.x и «предполагает», что это ошибка Xamarin, поскольку plist немного искажен по сравнению со сборкой Xcode (simctl, похоже, не волнует, но графический интерфейс симулятора делает. ..)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...