Не удалось установить ошибку приложения: неверный пакет - нет двоичных файлов Apple Watch

Я пытаюсь разработать расширение моего приложения для Apple Watch.

Вместо установки приложения на часы у меня есть эта ошибка:

AppName Не удалось установить AppName, ошибка: Недействительный пакет - Нет Apple Watch Binary

В моих файлах info.plist...

Для расширения я:

<key>CFBundleIdentifier</key>
    <string>com.mycompany.AppName.watchkitextension</string>
<key>WKAppBundleIdentifier</key>
    <string>com.mycompany.AppName.watchkitapp</string>

Для приложения WatchKit у меня есть:

<key>CFBundleIdentifier</key
    <string>com.mycompany.AppName.watchkitapp</string>
<key>WKCompanionAppBundleIdentifier</key>
    <string>com.mycompany.AppName</string>

И для моего приложения у меня есть:

<key>CFBundleIdentifier</key>
    <string>com.mycompany.AppName</string>

Я что-то пропустил?

Ответ 1

Попробуйте явно установить "Исполняемый файл" в app.plist приложения WatchKit.

Я изменил имя моего исполняемого файла и имел ту же проблему.

Ответ 2

Эта ошибка преследовала меня около 7 часов, после чего я перезапустил свои часы из отчаяния, и ошибка исчезла.

Ответ 3

Я часами искал эту ошибку. Для меня проблема заключалась в том, что моя целевая установка развертывания WatchKit была установлена ​​на версию iOS выше, чем у моего телефона. Я просто изменил его, чтобы он соответствовал моей версии устройства, и он отлично работал. enter image description here

Ответ 4

Для меня проблема была исправлена ​​добавлением приложения watch в мою часть содержимого iOS Target Inbed Watch Content.

Я использую Xcode 7 и watchOS 2.0. Он прекрасно работал на устройстве, но симулятор дал мне эту ошибку.

Шаги:

  • Найдите цель iOS
  • Нажмите "Построить фазы"
  • Убедитесь, что ваше приложение часов (.app) включено в "Зависимости целей" и "Вставить содержимое контента"

Ответ 5

В моем случае ни один из этих решений не работал у меня, однако я заметил, что по умолчанию для приложения WatchKit требуется iOS 8.3, а на моем телефоне работает iOS 8.2. Обновление ОС до 8.3 решило мою проблему. Это может показаться очевидным решением, но я думал, что поделюсь тем, кто может поделиться моей проблемой.

Ответ 6

В моем случае я получил его при создании приложения для WatchOS2. Я исправил настройку таких схем:

Схема расширения часов   3 Цель: iPhone (2 зависимостей) + Расширение (без зависимостей) + Наблюдение за приложением

Running Extension Scheme on iPhone simulator -> works!

Ответ 7

В моем случае это была ошибка конфигурации Info.plist. Bundle identifier отличается от NSExtension -> NSExtensionAttributes -> WKAppBundleIdentifier.

Установка того же значения зафиксировала ошибку.

Ответ 8

Сброс watch/xcode/iphone иногда не помогает, как описано в другом ответе.

Еще один случай, чтобы решить эту проблему: Эта ошибка появляется, когда я меняю язык iPhone на своем iPhone, а не на английском (в моем случае - русском) языке. Когда я вернусь на английский язык - все начинается, как обычно!

Ответ 9

Убедитесь, что:

  • Идентификатор пакета приложения iOS - это префикс для приложения watch и расширения 'bundle id.
  • Значение WKCompanionAppBundleIdentifier в Info.plist вашего часового приложения соответствует идентификатору пакета вашего приложения iOS.
  • Приложение iOS, приложение для просмотра и расширение должны подписываться тем же сертификатом.
  • В iOS-приложении должна быть фаза сборки:
    • Назначение: Каталог продуктов
    • Subpath: $(CONTENTS_FOLDER_PATH)/Watch
    • Нажмите +, добавьте целевое приложение для часов.

Ответ 10

Заполнение отображаемого имени Bundle в файле info.plist.Default пустое, появится предупреждение. (Xcode 7.3)

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