Приложение iMessage, ошибка «запрещены вложенные пакеты» при попытке архивирования / выгрузки с помощью двоичного фреймворка - PullRequest
2 голосов
/ 17 октября 2019

У меня есть приложение iMessage (не приложение с расширением iMessage), в которое я успешно добавил двоичную структуру (проект работает на устройстве и на симуляторе).

Однако я не могу успешно загрузитьПроект в App Store Connect - загрузка из архива сборки возвращает следующие ошибки:

Upload error

Соответствующий текст ошибки:

Пакет ... содержит запрещенные вложенные пакеты. См. https://developer.apple.com/go/id=framework-imessage

Эта ссылка (если вы следуете инструкциям по использованию более новой версии XCode) возвращает вас к ссылке ниже, которую я использовал для добавления платформы для начала ... для запуска вам понадобитсяXcode 11, поскольку я использую XCFramework.

Я добавил каркас к приложению iMessage в соответствии с инструкциями Apple здесь:

https://developer.apple.com/library/archive/technotes/tn2435/_index.html

(см. Embeddedфреймворк в разделе приложения iMessage

Что мне нужно изменить в настройках проекта или расширения, чтобы процесс архивирования / выгрузки был успешным, хотя на самом деле включил фреймворк, который мне нужен? Я искал в StackOverflow и нашел множество постов, связанных с cocoapods или вокруг различных настроек сборки «Always Embed Swift Standard Libraries», которые не помогают.

Я сократил проблему до простого примера. Приложение, которое вы можете увидеть здесь, которое прекрасно собирается и работает, но не может быть заархивировано и загружено:

https://www.dropbox.com/sh/jpa4oe7zlnb21wl/AACXkLbxIbayZUtJr3VDwO07a?dl=0

Этот каталог содержит zip-файл проекта и изображение, показывающее ошибкувстречаются.

Ответы [ 2 ]

0 голосов
/ 23 октября 2019

Я внес несколько изменений в приложение-заглушку, похоже, оно работает и проверяет нормально.

  1. Удалите Embed Framework из цели расширения.
  2. Добавьте Embed Framework в цель приложения, установите для Destination значение 'Frameworks'

0 голосов
/ 23 октября 2019

У вас есть .xcframework в вашем проекте. Возможно, вы не включили Build Libraries for Distribution в настройке сборки, если у вас есть сборка .xcframework. Вы можете сослаться на эту ссылку для этого.

Редактировать:

Сообщение об ошибке: Invalid Bundle . Поэтому проверьте имя пакета расширения сообщения и структур, которые находятся в .xcframework.

...