たけぞうBLOG

iOS,XCode,Cameraなど

Apple watch Swift Xcode6

[Swift]WatchKitで”error: WatchKit Extension doesn’t contain any WatchKit apps whose bundle identifiers match 〜”と怒られた

投稿日:5月 19, 2015 更新日:

WatchKit対応のアプリをストア公開用にビルドする際、以下のように怒られたので対処メモです。
error: WatchKit Extension doesn\'t contain any WatchKit apps whose bundle identifiers match \"xxx.xxx.xxx.watchkitapp\". Verify that the value of WKAppBundleIdentifier in your WatchKit Extension\'s Info.plist matches the value of CFBundleIdentifier in your WatchKit App\'s Info.plist.

エラーの意味と原因

WatchKit ExtensionのInfo.plistのWKAppBundleIdentifierとWatch AppのInfo.plistのCFBundleIdentifierが合ってないよ。つまり、WatchKit ExtensionとWatchKit AppのそれぞれのInfo.plistで不整合が起こっているわけです。

対応方法

それぞれのInfo.plistをチェックします。

WatchKit ExtensionのInfo.plist

XcodeのNavigation AreaからWatchKit Extension > Supporting Files > Info.plistを開きます。 確認すべきは、NSExtensionのNSExtensionAttributesのWKAppBundleIdentifierです。 これが次のWatchKit AppのInfo.plistにあるにあるBundle Identifierと一致している必要があります。   \"release-Info_plist_—_Edited\"   Info.plistをテキストエディタで編集する際は下記の箇所を確認してください。
<key>NSExtension</key>
<dict>
    <key>NSExtensionAttributes</key>
    <dict>
        <key>WKAppBundleIdentifier</key>
        <string>com.example.helloapp.watchkitapp</string>
    </dict>
    <key>NSExtensionPointIdentifier</key>
    <string>com.apple.watchkit</string>
</dict>
 

WatchKit AppのInfo.plist

XcodeのNavigation AreaからWatchKit App > Supporting Files > Info.plistを開きます。 こちらの確認項目はBundle Identifierです。   \"02\" Info.plistをテキストエディタで編集する際は下記の箇所を確認してください。
   <key>CFBundleIdentifier</key>
    <string>com.example.helloapp.watchkitapp</string>
エラーに書かれている内容をよく読めばわかるのですが、私はしばらくハマってしまいました。。

-Apple watch, Swift, Xcode6
-, ,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

Amazonで2350円!BLE対応ヘッドフォンのmpow swiftをApple Watchにつないでみた

Apple Watchとbluetooth対応ヘッドフォンつないで音楽を楽しみたいと思ったので、mpow swiftというヘッドフォンを購入しました。

SwiftのiOSプロジェクトにGoogle Analytics Services SDKを設定する方法

現時点(2014/09/16)でGoogle Analytics Services SDKのSwift版はリリースされていませんが、これから説明する手順で動作確認できたので共有します。

Swiftでデバッグ用にLOGやLOG_METHOD()を使いたい

Objective-Cで使っていたLOGやLOG_METHODといったマクロをSwiftでも同様に使いたかったので作りました。

[Swift]WatchKit対応プロジェクトを一時的に非対応にする方法

XcodeでWatchKit対応アプリを開発していたのですが、一時的にWatchKit対応を外す必要があったため、手順メモです。

[Swift]Autolayout+UIScrollView上に動的なUITextViewを表示する

Autolayout+UIScrollView上に動的なUITextViewを表示しようと思ったのですが、なかなか一筋縄ではいかなかったので備忘録 やりたいこと StoryboardでAutolayo …

プロフィール


1972年神奈川県生まれ。ソフトウェアエンジニアとして生きています。最近はクライアントアプリからサーバーサイドまで幅広くやってます。