Xcode: 無線でデバッグ可能になっていて驚いた→Watchがほとんどデバッグできない
今日、たまたまiPhoneとMacをケーブルで繋ぐのを忘れてXcodeでデバッグ実行ボタンを押したのですが、たぶんエラーになるのだろうなと思ってたら、何も言わずにデバッグが始まったのでびっくりしました。
今までケーブルで繋ぐ必要があると思っていました。結構昔から繋がなくてよくなってたのかな。
Xcode 14のときはエラーになっていたような気がするのですが気のせいかな。
もし15からだとするとこれが原因でXcodeが不安定になっている気がしないでもありません。
15になってから頻繁にXcodeがかたまるので。
もともとある機能のようでした。
Window→Devices and Simulatorsで、Connect via networkのチェックボックスをオンにすると無線でバッグになるということです。
が、バグで?Xcode 15からは無線デバッグが勝手にオンになるうえ、オフにできない、ということのようですね。
Xcode 15にしてからWatch Complicationのデバッグがほとんどできなくなってしまい(なんか稀にできることがある)、前はvia iPhoneとか出ていたのが出てないなと思って確認すると、Apple WatchとMacが直接繋がってるように見えたんです。
よくよく調べるとこの問題ですね。
Xcode 15(15.3)がApple Watchに直接デバッグ接続しようとするのをどうやっても防げないように見えます。
とりあえずXcode 14.3.1に戻すことにしました。
Xcode 14.3.1は「macOS Sonomaと互換性がありません」で起動できませんでした…
よくよく考えると14.3.1ではiOS 17とかwatchOS 10とかでデバッグできませんね。
Xcode 15.3で以下のようにしたら、Apple Watchを再度、デバッグできるようになりました。
- Devices and SimulatorsからいったんApple Watchを消す(Unpair Device)
- Apple Watchのデベロッパモードをオフにしたあと再度オンにする(設定→プライバシーとセキュリティ→デベロッパー、で変更)
- そうするとApple Watchを再起動させられるので再起動
- Apple Watch起動後に再度「Macを信頼しますか?」って聞かれるので「信頼する」
- XcodeのDevices and SimulatorsにApple Watchが再度現れていて、繋がったことを確認
一回じゃうまく行かず、何回かやりましたね…
結局、Xcode 14のように、Mac-(USB)-iPhone-(Bluetooth)-Apple Watch、というのはもうできなくて、Mac-(WiFi)-Apple Watch、しかできないようですね。