最近AppleWatchを購入して、watchOS勉強中です。
早速Xcodeで実機ビルドをしよう!…と、試して意外にも時間かかってしまい、無事に実機ビルドできるまでの過程をまとめてみました。
Xcodeのbuild schemes にAppleWatchが表示されない
'Watch-only App' でプロジェクトを作成
↓
早速実機ビルド試してみよう
…の手順で進めてました。
しかし、実機のAppleWatchがSchemeに表示されていない…
そもそも端末使ったビルドってどうやってたっけ?と、過去にiPhoneをビルドした時の思い出を巡らせながら(すっかり忘れてたけど…)アレコレ試してみました
*Schemeについては分からない方は、こちらのドキュメントを参考にしてください
https://developer.apple.com/documentation/xcode/customizing-the-build-schemes-for-a-project/
ペアリング確認と別プロジェクト立ち上げ
iPhoneとAppleWatchはペアリングできている。
別プロジェクトを立ち上げ、'Watch App with New Companion iOS App' で作成して検証してみる。
'Watch App with New Companion iOS App' のプロジェクトからiPhone/AppleWatchのターゲットを選択し、それぞれ選択してみた。↓こんな感じ
iPhone側の方では実機が選択できましたが、AppleWatch側のほうでは実機が出てこない…
Xcode/AppleWatchを再起動
Xcodeを再起動してみましが、こちらもダメ。
AppleWatchを再起動してみたところ、デベロッパモードの許可画面が表示しました。
許可をONにした後、「これでビルドできる!」と喜んだ束の間、XcodeのSchemeを確認しましたが、実機AppleWatchは選択できず…
AppleWatchのデベロッパーモードを確認
ググりつつ色々な記事を読んでみると、AppleWatchの「設定」→「プライバシーとセキュリティ」にデベロッパーモードがあるとのこと。端末を早速調べてみたけど表示されていない!! 何故だ…
XcodeのSigining & Capabilitesを確認
ここまでで、Simulatorでビルドを試してなかったことに気づく。
Simulatorを選択してビルドしてみましたが、プロジェクトをXcodeで開いて、TARGETS → Sigining & Capabilites を確認してみて、Signing for "⚪︎⚪︎" requires a development team.と開発証明書が無かった件。(証明書の作成については省かせていただきます🙏)
とりあえず、Developerアカウントを作成して、Accountsに追加しました。
Sigining の Team を 'None' から、作成したAccountに合わせました。
その後、無事ビルドが成功。
ビルド後に Scheme を確認しましたが、それでもやっぱり実機AppleWatch選択できないよね…
結局のところ時間が経ったら実機ビルドできた
プロジェクトを立ち上げて
関連する公式ドキュメントやフォーラムを探してみたり、色々な記事を読んでみたりとアレコレ試して3日が経過…
まさか実機ビルドするだけにこれだけ時間がかかるものなのか…!?
と意気消沈した矢先、Schemeに実機AppleWatchが登場。(どういうこと…!?)
AppleWatchの開発は不安定とは聞いたことあるけども、なぜ実機ビルドできるようになったのかが解明できず…
うーん、時間が経てば出現するものなのか?🧐
実機ビルドができるようになった後で、AppleWatchの「設定」→「プライバシーとセキュリティ」にデベロッパーモードが存在していました。(watchOSは不安定?)
'Watch-only App'と'Watch App with New Companion iOS App'の両方でSchemeに実機端末が表示され、ビルドできたので結果良し!
参考記事