Я не использую старый проект. Я выполнил полный сброс «выжженной земли», чтобы создать это на 100% с чистого листа, но проблема не устранена.
Принятые шаги
Чтобы гарантировать, что никакие «призрачные» настройки (из старых учетных записей или сборок) не могут мешать, я сделал следующее в точном порядке на Apple Portal:
- Пользователи и Доступ: удалены все старые ключи API. Создан новый API-ключ «Администратора» (файл .p8).
- Устройства: удалены все старые/дубликаты тестовых устройств. Повторно добавил два своих iPhone (iPhone 13 и iPhone 14), используя их UDID. Список устройств теперь на 100 % чист.
- Сертификаты: отозваны и удалены все сертификаты «Разработка».
- Профили: удалены все профили «Разработка приложений для iOS».
- Идентификаторы: удален старый идентификатор приложения. Создан новый идентификатор (com.example.newapp.mobile), явно привязанный к идентификатору группы моего бизнес-аккаунта.
- Удалены папки bin, obj и .vs.
- Очистка .csproj файл всех групп CodesignKey или CodesignProvision.
- Очистил %LOCALAPPDATA%\Xamarin\iOS\ (папки Provisioning и Certificates).
- Очистил TEMP\Xamarin.
- Перезагрузил компьютер.
/>
- Принудительная возможность: при создании нового идентификатора приложения (шаг 5) моя учетная запись Apple Business принудительно включает возможность «Покупки в приложении» (IAP). Он проверен и заблокирован, его нельзя отключить.
- Возможности моего идентификатора приложения: я включил push-уведомления и (был вынужден принять) покупку в приложении. Я явно отключил Mac Catalyst.
- Мой Entitlements.plist: Чтобы соответствовать идентификатору приложения, мой Entitlements.plist правильно объявляет эти две возможности:
Код: Выделить всё
aps-environment
development
com.apple.developer.in-app-purchase
Я открываю VS (от имени администратора).
Я перехожу в Инструменты > Параметры > Xamarin > Учетные записи Apple и успешно добавляю свой новый API-ключ «Администратора» (файл .p8, идентификатор ключа, идентификатор эмитента).
Я открываю проект, устанавливаю для подписи пакета iOS значение «Автоматическая подготовка». и выберите мою (единственную) команду.
Я нажимаю «Развернуть».
- При «Автоматической подготовке» на портале успешно создается новый «действительный» сертификат разработки. (Это подтверждается в окне «Просмотреть детали...» в VS).
- При «Автоматической подготовке» также создается новый профиль обеспечения (VS: com.example.newapp.mobile Development).
Эта же ошибка возникает на двух разных чистых iPhone (iPhone 13 и iPhone 14).
Подозрительная деталь (но не доказанная причина)
Во время расследования я заметил странное несоответствие (которое может быть, а может и не быть причиной ошибки):
Мой идентификатор приложения (на портале) был создан без Mac Catalyst включен.
Однако в автоматически созданном профиле VS:... включен параметр «Включить устройства Mac», когда я проверяю его на портале.
Я не уверен, является ли это причиной ошибки 0xe8008015 или это просто безобидная ошибка в автопрофилировщике Visual Studio. Однако это предполагает, что автопрофилировщик может неправильно считывать возможности идентификатора приложения.
Мои вопросы:
Известна ли это ошибка автоматической подготовки, когда бизнес-аккаунт требует покупки в приложении?
Есть ли шаг, который я упустил в этом сценарии 100% «Нового запуска», который все еще может привести к 0xe8008015?
Кто-нибудь обнаружил, что единственное решение — отказаться от «автоматической подготовки» и использовать «ручную подготовку» в этом конкретном сценарии (принудительный IAP)?
Спасибо.
Подробнее здесь: https://stackoverflow.com/questions/798 ... atic-provi
Мобильная версия