Извините, за этот длинный вопрос, но я потратил 3 дня на неудачную попытку настроить среду разработки Xamarin.iOS, которая позволяет мне отлаживать физическое устройство (а не симулятор iPhone), и я в недоумении за то, что попробовать дальше.Как отладить приложение Xamarin.iOS на физическом устройстве iOS
Я считаю, что моя установка вполне стандартная конфигурация Xamarin:
- для Windows 10 ПК под управлением Visual Studio 2015 и Xamarin v4.2.0.703
- HTC телефон USB-подключение к ПК для Android отладки (работает отлично)
- MacBook работает OS X 10,11 с Xamarin студии v6.1.1 и Xcode v8.0
- iPhone или IPad USB подключенного к Mac для прошивкой отладки
Я начал с создания решения Xamarin в Visual Studio, которое я изначально разработал и отлаживал на Android.
Чтобы перейти к отладке iOS, я настроил Mac с помощью Xcode и Xamarin Studio, включил его для удаленного входа в систему и создал фиктивный проект Xcode с тем же идентификатором пакета, что и мое приложение Xamarin.iOS. Я также попытался создать довольно сложный процесс создания идентификатора подписи и профиля обеспечения для приложения и загрузки/установки на Mac. Этот процесс настолько неинтуитивный (и визуальная обратная связь в Xcode настолько бедна), что я не уверен, что я сделал это правильно. Тем не менее, я могу запустить проект фиктивного Xcode на iPhone, поэтому я предполагаю, что все в порядке?
На компьютере с Windows, то Xamarin>Параметры IOS панели в настройках Visual Studio подтверждает, что Visual Studio подключен к Mac и прилагаемый к нему iPhone также перечислены в качестве кандидата целевого устройства, так что кажется, что все настроен для отладки на устройстве.
Если я попытаюсь отладить приложение на симуляторе iPhone из Visual Studio, он работает правильно. Однако, отладка на физическом iPhone выдает следующее бесполезное сообщение:
Xamarin.Messaging.Exceptions.MonotouchException: error MT1006: Could not install the
application '/Users/Tim/Library/Caches/Xamarin/mtbs/builds/Test.iOS/c4f40041b6c58fc579a727bccfc18614/bin/iPhoneSimulator/Debug/TestiOS.app'
on the device 'Tim’s iPhone': AMDeviceSecureInstallApplicationBundle returned: 0xe8008001.
В качестве сравнения, я также попытался отладки непосредственно на Mac, используя Xamarin Studio. Опять же, симулятор iPhone работает нормально, но невозможно даже запустить сеанс отладки с использованием физического устройства, потому что подключенный iPhone не указан в качестве целевого целевого устройства для Отладка | iPhone конфигурации.
Если открыть параметры проекта и перейдите к IOS отладки зрения, я могу видеть, что платформа связана с конфигурацией Debug является iPhoneSimulator. Меняя его на iPhone и сохраняя конфигурацию, он появляется, но изменения на самом деле не сохранены. Я думаю, что это причина, по которой мое тестовое устройство отсутствует в списке, но я не совсем понимаю, что мне нужно сделать, чтобы Xamarin Studio приняла мои изменения.
Итак, после всех этих экспериментов я полностью потерялся. Было бы полезно иметь полный, надежный учебник A-Z для этого процесса установки, но, в противном случае, любые предложения, которые я должен попробовать, будут очень оценены.
UPDATE: Если я использую конфигурации проекта Ad-Hoc (в любом Visual Studio или Xamarin студии) это правильно разворачивает и запускает приложение на устройстве, но не присоединить отладчик. Если я явно разрешаю отладку в конфигурации Ad-Hoc, Xamarin Studio игнорирует ее, но Visual Studio затем присоединяет отладчик, но не попадает ни в какие точки останова. Все это звучит правильно? Он предлагает какие-либо подсказки, что мне нужно изменить, чтобы получить реальный Debug config для правильной работы?
Не похоже, что вы подготовили свой iPhone/iPad: https://developer.xamarin.com/guides/ios/getting_started/installation/device_provisioning/ – SushiHangover
@SushiHangover: Спасибо. Используя Xcode> Window> Devices, я только что проверил, что на iPhone установлен профиль обеспечения. Я перекрестно проверил установленный профиль в своей учетной записи Apple, и он включает мой идентификатор подписи разработки и перечисляет 3 устройства, одним из которых является iPhone, который я пытаюсь отлаживать. –
Странно .... У нас есть куча андроидов, которые не работают с отладчиком Xamarin (но делают w/A.S.), но никогда не имели проблемы с iOS, если они были подготовлены. Какие версии iOS находятся в iDevices (10?)? – SushiHangover