![見出し画像](https://assets.st-note.com/production/uploads/images/72177190/rectangle_large_type_2_2bde10012710f07c0833e5f4b197b440.png?width=1200)
Swift PlaygroundsでApp開発 #2 iPadとMacでプロジェクトをやりとりする
前回、iPadとMacの両方でSwift Playgrounds Appプロジェクトが作れることがわかりました。今回はiPadのプロジェクトをMacに渡して開発ができるのか試してみます。
1. iPadからMacへプロジェクトを送る
iPadのSwift PlaygroundsからAppプロジェクトをMacに渡します。Appにはあらかじめ「iPadで追加したよ」と青文字を追加しました。これを送ります。
![](https://assets.st-note.com/img/1644848897611-QjN7uElOr7.png?width=1200)
Appを長押しすると出てくるメニューから共有を選びます。
![](https://assets.st-note.com/img/1644824305010-lNhqgRvLEV.jpg?width=1200)
今回はAirDropでMacに共有します。共有方法はなんでもいいのですが、利点があるためAirDropを選択します。AirDropで共有できる状態にする(同じWiFiに繋いでいて共有をONにしている)とMacがデバイスリストに表示されます。Macをタップしましょう。
![](https://assets.st-note.com/img/1644827209584-MsXdgVB7DA.jpg?width=1200)
![](https://assets.st-note.com/img/1644830146040-5PC0aZaSZw.jpg?width=1200)
送信が完了すると、Mac側のダウンロードフォルダにプロジェクトが届いているはずです。
![](https://assets.st-note.com/img/1644849403924-aXYRtKCGZS.png?width=1200)
届いたファイルは.swiftpmでした。
いけそうですね。XCodeにドラッグ&ドロップして開いてみましょう。
![](https://assets.st-note.com/img/1644851703845-5V5Ml6vyNC.png?width=1200)
背景色以外、iPadと同様のプレビュー結果が得られました。背景色も設定があれば同じにできます。Macで新規作成したものと同じ環境ができていることが確認できました。
2. MacからiPadへプロジェクトを送る
では次は逆をやってみたいと思います。iPadから受け取ったマイAppにMac側でもう一つ緑色のテキストを追加しました。
![](https://assets.st-note.com/img/1644852385635-MOMsImgCBq.png?width=1200)
このマイApp.swiftpmをAirDropで再びiPadへ共有します。
![](https://assets.st-note.com/img/1644852777529-NKKB0jlxFB.png?width=1200)
AirDropで共有するとiPadは.swiftpmであることを理解して、自動的にSwift Playgroundsのマイプレイグランドに追加してくれます。AirDropを使った理由はここです。
![](https://assets.st-note.com/img/1644853022819-7Bn2x8mVdx.jpg?width=1200)
Swift Playgroundsのマイプレイグラウンドリストに追加することができました。開いて確認してみます。
![](https://assets.st-note.com/img/1644853148000-ezT73a7rVM.jpg?width=1200)
Macで追加した緑色のテキストも追加されてますね。
無事に.swiftpmの行き来ができました。
3. 所感
.swiftpmプロジェクトを使うことで、iPadとMacを切り替えながら続けて開発できることがわかりました。なんか当たり前のことな気もしますが、.xcprojプロジェクトではできないスタイルなので、.swiftpmの大きなメリットの1つと言えると思います。
いや、実際これはとても嬉しい。iPadで開発作業の続きをできるとなると、開発スタイルも選択肢が広がります。iPadでビューをデザインしつつ、Macでロジックを書くなど使い分けもできそうです。
ちなみに、共有方法はAirDrop以外でも良いと思います。マイプレイグラウンドに追加しなくてもよければ、iCloud Driveで同期するのもいいと思います。
さて、Playgroundsの新しい環境についてひととおり紹介しました。一方で、ここまでほとんどSwiftもSwiftUIも書いていないので、次は.swiftpmを使ってSwiftUIに触れてみたいですね。
記事リスト
前: Swift PlaygroundsでApp開発 #1 開発プロジェクトをつくる
次: 執筆中