Неработающие сертификаты и профили разработчиков

Я очень беспокоюсь о своих сертификатах/профилях и нуждаюсь в помощи в устранении проблемы. У меня есть приложение в магазине приложений Apple для iPhone, iPad и Mac, и я отправил несколько обновлений. Я только что обновил свой Xcode до Xcode 12 и больше не могу отправлять версию приложения для Mac Catalyst в нотариальную службу Apple и получать следующие ошибки:

Cannot create a Mac Catalyst Developer ID provisioning profile for "<profile>".
The App Groups capability is not available for Mac Catalyst Developer ID provisioning profiles. Disable this feature and try again.
Provisioning profile failed qualification
Profile doesn't include the selected signing certificate.
Provisioning profile failed qualification
Profile doesn't support App Groups.

До этого момента я не создавал новый профиль идентификатора разработчика с февраля, и в течение многих месяцев в моем приложении были группы приложений, и я рассылал с ним несколько обновлений и нотариусов. После множества исследований я увидел, что это может быть как-то связано с моим профилем идентификатора разработчика, поэтому я посмотрел его на веб-сайте разработчика Apple и увидел, что статус недействителен. Я сделал новый, удалил недействительный и попытался выполнить шаги по архивированию новой сборки и попытке отправить ее нотариусу Apple, но в итоге получил ту же ошибку.

Я провел дополнительные исследования и наткнулся на https://developer.apple.com/support/certificates/ и увидел, что удаление профиля может привести к тому, что я не буду обновлять свои текущие приложения в магазине приложений. Я удалил весь свой доступ к обновлению моих приложений???

Я до сих пор не могу решить проблему с нотариусом и теперь очень обеспокоен тем, что снова испортил свои шансы на обновление своего приложения. Не могли бы вы помочь мне с обоими проблемами?

У меня есть обновление для Mac, которое я хотел бы отправить в App Store как можно скорее, но перед отправкой пользователям хочу узнать, безопасно ли оно.


person ap123    schedule 19.09.2020    source источник


Ответы (2)


Проблема здесь в том, что право App Groups недоступно для MacOS, как вы можете видеть, щелкнув i на портале Certificates, Identifiers & Profiles вашей учетной записи Apple Developer.

введите здесь описание изображения

Очевидно, вы все еще хотите использовать это для своей iOS версии приложения, но это не нужно для MacOS версии. (Хотя версия для MacOS по-прежнему может использовать вашу группу приложений, для нее не требуется право).

Чтобы исправить это, вам нужно использовать другой файл .entitlements для сборки MacOS и сборку iOS.

Во-первых, продублируйте текущий файл .entitlements. Самый простой способ — удерживать клавишу Alt, слегка перетаскивая файл .entitlements. Это сделает копию. Переименуйте его во что-то вроде Original Name-MacOS.entitlements.

Следующий шаг — открыть Build Settings и ввести entitlements в строку поиска.

Вы увидите исходный файл прав для сборок Debug и Release. Выберите строку Debug, затем нажмите кнопку +. Нажмите на Any SDK и измените его на Any macOS SDK. Теперь измените имя файла прав на ваш вариант MacOS.

Повторите процесс для сборки Release, чтобы она выглядела, как показано ниже.

введите здесь описание изображения

Последним шагом будет удаление оскорбительного права из вашего файла MacOS .entitlements. Это необходимо сделать вручную, так как на вкладке Signing & Capabilities будут отображаться права только из исходного файла iOS. Итак, щелкните файл MacOS .entitlements и удалите запись App Groups.

Clean ваш проект, Build & Run, Export и т. д.. и все готово.

person Darren    schedule 14.02.2021
comment
Большое спасибо за этот ответ, в итоге я отключил виджеты и намерения Siri в моем приложении и использовал ваш ответ, чтобы использовать разные права для iOS и MacOS. Спасибо! - person thecoolwinter; 21.02.2021
comment
@thecoolwinter и Даррен Если я все еще хочу использовать свои виджеты для Mac, разве мне не нужна группа приложений для связи с виджетом? Для работы виджетов на главном экране iOS 14 требуется группа приложений - person ap123; 10.03.2021
comment
Группы приложений не поддерживаются в MacOS, поэтому я полагаю, что они не нужны. Я никогда не делал виджет для MacOS, но вы проверяли, использует ли он тот же контейнер, что и приложение по умолчанию? - person Darren; 10.03.2021
comment
@ap123 ap123 Я не проверял это тонну, но я смог заставить виджеты работать изначально из коробки, просто заставив их искать файлы в контейнере по умолчанию, используя #if targetEnvironment(macCatalyst). Это все, что я знаю на данный момент, я просто пошел по пути, я сделаю это позже, и разорвал все это для сборки катализатора. - person thecoolwinter; 10.03.2021

некоторые пользователи могут исправить это, отключив и включив функцию групп приложений для всех моих целевых приложений на вкладке «Подписание и возможности» в Xcode.

person Community    schedule 28.09.2020