2014-10-01 1 views
3

Я пытаюсь установить мое расширение приложения на моем iPhone устройстве, но я получаю следующее сообщение об ошибке:Установка приложения Расширение на устройство?

This application or a bundle it contains has the same bundle identifier as 
this application or another bundle that it contains. Bundle identifiers must be unique. 

приложения контейнера есть расслоение ID: com.companyName.AppName и идентификатор пакета для приложения extension is com.companyName.AppName.WidgetApp.

Я попытался подписать расширение с тем же предоставлением ресурсов, также я установил другой AppID с сайта разработчика Apple и новые профили подготовки для расширения приложения, а также попытался установить подписку на расширение Widget на Automatic, но по-прежнему такая же ошибка, и приложение не может быть запущено на устройстве.

Что мне делать, чтобы установить расширение приложения на устройство?

Вот скриншоты моей вкладке Общие для обоих моего приложения и расширения:

App: enter image description here

Расширение: enter image description here

Спасибо.

+0

Вы пробовали com.companyName.AppName_WidgetApp? Я подозреваю, что субдомен регистрируется как одно и то же. Изменить: hm, нет, это должно работать нормально. можете ли вы опубликовать скриншот вкладки «Общие» для вашего приложения и расширения? Если нужно, удалите TLD. – brandonscript

+0

@remus Я загрузил 2 скриншота. Проверьте это ниже –

+0

Darn, увидел ваш комментарий - совершенно правильно. Он должен изящно терпеть неудачу. Что он говорит на вкладке «Информация»? Вытаскивает ли переменную $ {PRODUCT.ID}, или она жестко закодирована? – brandonscript

ответ

4

Выполнение команды clean работало для меня.

Это делается через пункт меню XCode; Product > Clean или SHIFT + COMMAND + K

1

У меня была эта точная проблема, и это было связано с дублированием фреймворка, включенного в сборку. Я включил как тестовую, так и не тестовую версию той же динамической структуры. Как только я удалил один, установка продолжилась, как ожидалось.

Я делюсь этим в надежде, что это поможет кому-то другому, если они столкнутся с этой особенно неясной ситуацией.

0

В Swift:

Если вы установили стручки, то вы должны изменить расслоение идентификатор в качестве org.cocoapods.podName в общей идентичности. Убедитесь, что цель развертывания всех контейнеров должна быть одинаковой с целью развертывания проекта.

+0

Что именно вы имеете в виду здесь? Должен ли я изменить идентификатор связки объекта? К чему? – andlin

+0

вам нужно проверить, используете ли вы тот же идентификатор пакета с любым другим проектом. –