🚨
【Swift】WCSession counterpart app not installed エラーの解消
初めに
今回は Swift で watchOS の開発している途中で発生した「WCSession counterpart app not installed」というエラーを解消する方法をメモ程度で残しておきたいと思います。
記事の対象者
- 上記エラーを解決したい方
環境
- Xcode 16.0
- MacBook Pro Apple M3
- iOS Simulator ( iPhone16 Pro )
- watchOS Simulator ( Apple Watch Ultra 2 via iPhone 16 Pro )
エラー内容(一部省略)
WCSession counterpart app not installed
Failed to send CA Event for app launch measurements for ca_event_type: 0 event_name: com.apple.app_launch_measurement.FirstFramePresentationMetric
Failed to send CA Event for app launch measurements for ca_event_type: 1 event_name: com.apple.app_launch_measurement.ExtendedLaunchMetrics
WCSession counterpart app not installed
AddInstanceForFactory: No factory registered for id <CFUUID 0x6000002f5a20> F8BB1C28-BAE8-11D6-9C31-00039315CD46
LoudnessManager.mm:709 unable to open stream for LoudnessManager plist
NSBundle file:///Library/Developer/CoreSimulator/Volumes/iOS_22A3351/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS%2018.0.simruntime/Contents/Resources/RuntimeRoot/System/Library/PrivateFrameworks/MetalTools.framework/ principal class is nil because all fallbacks have failed
エラー原因
エラー内容からもわかる通り、 WCSession で接続されているはずのアプリケーションが見つからないことが原因であると考えられます。
今回の場合は watchOS が接続されていないようです。
解決策
解決は以下のような手順で行います。
- iOS アプリ側の「General」を開く
- 「Frameworks, Libraries, and Embedded Content」を確認
- 以下の画像のように 「Frameworks, Libraries, and Embedded Content」の項目に指定がない場合は watchOS のアプリを追加
自分の環境では、以下の画像のように watchOS のアプリを追加した後、Clean Build Folder
を実行すれば問題なく接続することができました。
なお、iOS と watchOS の連携には他にも設定が必要であるため、それらに関しては今後まとめられたらと思います。
以上です。
最後まで読んでいただいてありがとうございました。
参考
Discussion