Я попытался добавить расширения к моему iOS-приложению, как к сегодняшнему расширению, так и к приложению Apple Watch. Однако мое приложение было завершено, но при отправке моего архива я получил ошибку, основанную на моих идентификаторах пакетов. Затем я удалил расширения, добавил их обратно и попытался повторно отправить. Однако xcode теперь жаловался, что мои профили подготовки не могут быть подписаны.
"Идентификатор приложения с идентификатором" com.example.app.extention "не является доступный. Введите другую строку.
Я сразу же отправился в центр участника, чтобы узнать, существует ли уже существующий идентификатор приложения, который мешает мне использовать его для моих расширений. Ничто не противоречило имени, это то, что было так странно для меня. Разве я не могу сделать новый ID, если он не конфликтует со старым идентификатором? Я также удалил профили подготовки из предыдущих расширений. Тем не менее, я не мог добавить ни "com.example.app.extention"
, ни <<21 >
Я решил просто создать новые идентификаторы приложений, следуя новому соглашению о присвоении имен, например "com.example.app.extentions.watchkitextension."
или "com.example.app.extentions.todayextention."
. Все работало нормально и построено отлично. Я установил на свои устройства, все было хорошо. Мой архив даже был проверен. Однако после подачи я получаю сообщение об ошибке:
ОШИБКА ITMS-90347: "Идентификатор плохой связности. Идентификатор пакета" xxx.yyy.zzz "расширения приложения xxx.app/Plugins/xxxExtension.appex следует начинать с приложения идентификатор пакета" xxx "и не содержит более одного периода". после идентификатор пакета приложений.
Это означает, что я должен использовать соглашение об именах "com.example.app.extention"
, что xcode и центр участника не позволят мне создавать правильные идентификаторы.
Я очень расстроен, кто-то может помочь. Я не могу найти решение где угодно.
ИЗМЕНИТЬ
Казалось, что я вообще не смог использовать этот идентификатор.
Кроме того, я должен отметить пару предупреждений для любого, у кого есть это сообщение:
1) Вы не можете добавить ничего до того, как его расширение включает период, например, в com.domain.app.extensions.extension тоже не будет работать. 2) Автоматический преобразователь Swift 2 имеет тенденцию изменять идентификаторы для более стандартных имен и пытается позволить xcode разрабатывать профили обеспечения. Будьте осторожны!
Единственное исправление, которое я имел, это изменить имя идентификатора навсегда. Я лично использовал com.domain.app.todayextension. Я получил его для работы, но только после установки и добавления правильных профилей подготовки для разработки и распространения через центр членов. Кажется, это ошибка в системе Apple, или, может быть, мы все абсолютно не знаем, как работают профили обеспечения. Я думаю, что последнее, вероятно, верно. Во всяком случае, я надеюсь, что это поможет!