しめ鯖日記

swift, iPhoneアプリ開発, ruby on rails等のTipsや入門記事書いてます

既存アプリをAppleWatch対応にしてみた (アプリが起動する所まで)

AppleWatchの開発をしてみたのでそのメモになります。
今回は既存のプロジェクトをAppleWatch対応しました。
Xcodeのバージョンは6.3.1になります。

とりあえずAppleWatchのシミュレータ動かす!

まずはAppleWatchシミュレータが起動する所まで挑戦しました。
最初にTargetを追加します、左下の+ボタンから追加

f:id:llcc:20150517135240p:plain

AppleWatchを選択。

f:id:llcc:20150517135250p:plain

画面の手順に従ったら無事にそれらしいものが2つ追加されました。

f:id:llcc:20150517135312p:plain

Storyboard等のAppleWatchで動かすのに必要なファイルも自動で追加されました。
赤く表示されてるのですが、プロジェクトを開き直すと解消します。
1からAppleWatchアプリ作った時はならなかったのでCocoaPodsを使っているとなるのかもしれません。

f:id:llcc:20150517160730p:plain

早速ビルドしてみたらエラー。
BundleIDが正しくないとの事で修正をしました、エラー内容は下の通り。
デバッグ時の時だけBundleIDに.debugを付けるようにしていた事で変になっていたようです。
AppleWatchのBundleIDも.debugが付くようにして再度起動!

error: WatchKit Extension doesn't contain any WatchKit apps whose bundle identifiers match "com.ono.weight.debug.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.

行けたかと思いつつ再度エラー!!
下のようなメッセージが出たのでAppleWatchのdeployment targetを8.2にしてから再び起動 警告は出なかったけどついでにExtensionのDeployment Targetも修正して起動。

error: WatchKit apps must have a deployment target equal to iOS 8.2 (was 8.3).

f:id:llcc:20150517162434p:plain

今度こそ! と思い起動したらまたもエラー。
アプリのバージョンが合ってないようなので修正。

error: The value of CFBundleShortVersionString in your WatchKit app's Info.plist (1.0) does not match the value in your companion app's Info.plist (1.2). These values are required to match.

f:id:llcc:20150517162632p:plain

上を修正して起動したらついにビルド成功。
しかしAppleWatchが表示されず。

メニューからAppleWatchを起動する必要があるようなので追加。

f:id:llcc:20150517163433p:plain

無事に起動してくれました。

f:id:llcc:20150517163527p:plain