Я наконец смог снова развернуть на наших устройствах iOS. Вот шаги, которые я предпринял, чтобы заставить его работать.
Во-первых, я следовал за все 10 шагов в ответе Замира здесь . Я скопировал их ниже:
- Откройте ваш проект в XCode.
- Выберите ваш проект в навигаторе проекта, а затем выберите target из столбца.
- Перейдите на вкладку Общие и в разделе Подписание убедитесь, что «Автоматически управлять подписью» включено.
- Нажмите на вкладку Capabilities и включите On и «Группы приложений» и «Keychain Sharing» . Это может поднять
«Ошибка автоматической подписи» Ошибка всплывающего окна, просто нажмите «Отмена», чтобы отключить ее.
- Это должно сгенерировать файл разрешений для вас с именем nameProject.entitlements в папке проекта вашего навигатора проекта.
- Переместите этот файл разрешений за пределы папки, чуть ниже файла вашего проекта.
- Снова выберите цель и вернитесь на вкладку Capabilities , чтобы включить Off и "Группы приложений" и "Keychain Sharing"
Настройки. Это снова может вызвать всплывающее окно «Сбой автоматической подписи»
Ошибка, просто нажмите Отмена, чтобы она исчезла.
- Теперь выберите проект над целью и перейдите на вкладку Настройки здания .
- Прокрутите вниз до параметра Идентификатор подписи кода в заголовке Подписывание и выберите iOS Developer из каждого раскрывающегося списка.
- Под заголовком Подпись дважды щелкните текстовое поле рядом с Правами подписи кода и введите имя своего
файл разрешений, nameProject.entitlements .
После выполнения этих 10 шагов 2 красных сообщения об ошибках в XCode исчезли, и я смог создать и развернуть тестовое приложение XCode на iPhone и запустить его.
Хотя это тестовое приложение XCode можно было создавать и развертывать, я разрабатываю на ПК с использованием Xamarin и не смог развернуть приложение Xamarin.iOS на своих устройствах iOS и продолжал получать сообщение об ошибке в Visual Studio: the executable was signed with invalid entitlements
. Я сделал следующее, и теперь я могу развернуть приложение Xamarin и запустить его на своих устройствах iOS:
- Я удалил профиль обеспечения с Mac в каталоге
~/Library/MobileDevice/Provisioning Profiles
. XCode немедленно сгенерировал новый предусматривающий профиль (я не уверен, что этот шаг был необходим, но я просто пишу его, потому что это то, что я сделал).
- Я изменил свой
Xamarin.iOS.csproj
файл и удалил Entitlements.plist
из элемента CodesignEntitlements
, так что теперь он выглядит как <CodesignEntitlements></CodesignEntitlements>
. Visual Studio автоматически добавила два элемента в одну группу свойств в проекте, которые, вероятно, не нужны, но я подумал, что упомяну: <CodesignExtraArgs />
и <CodesignResourceRules />
.