VSCode + Github Copilot で iPhone アプリ開発
Github Copilot 試しにしばらく有料契約してみて、へーーと感心していたのだけれど、
趣味のプログラミングではそもそもそんなにコーディングする時間が取れない(最近はギターの練習が楽しい)状況だったので、解約していた。
のだけれど、なんと、無料化というニュースが、Xとかに飛び込んできた。
https://gihyo.jp/article/2024/12/github-copilot-free
XCodeでiPhoneアプリを作りたいなと学習中だったのだが、VSCode+Github Copilot でなんとかできないかと環境作ったのでメモする。
GitHub Copilot のVSCodeプラグインをインストールしとく
GitHub Copilot とGitHub Copilot Chat
そもそも、GitHubのアカウント登録とかは事前に必要。Copilotの設定も必要かも。
自分は有償時代に実施済みだったのか、そもそも不要なのかよくわからないけど、特に何もせず行けました。

VSCode に Xcodebuild Toolsを導入
VSCodeでXCodeのビルドを実施する拡張機能(Xcodebuild Tools)を導入

npmを使ってios-simをインストールする
> npm install --global ios-sim
以下のような設定ファイルを、.vscodeフォルダ配下に、xcodebuild-tools.json という名前で作成するとのことだが、赤文字部分などがよくわからないので調べていく。
{
"variables": {
"SDK_VERSION": "11.4"
},
"sdk": "iphonesimulator${SDK_VERSION}",
"workspace": "${workspaceRoot}/helloworld-ios.xcworkspace",
"scheme": "build",
"debugConfigurations": [
{
"name": "Simulator",
"cwd": "${buildPath}",
"program": "ios-sim",
"args": [
"launch", "project.app/",
"--devicetypeid", "com.apple.CoreSimulator.SimDeviceType.iPhone-7, ${SDK_VERSION}"
]
}
]
}
とりあえず、ファイルを置くと、画面下部に、シミュレータ起動アイコンが出現。

SDK_VERSION と SDK
MacにインストールされているSDKのバージョンを確認して設定する。
以下のコマンドで表示された適当な物を選ぶ
xcodebuild -showsdks

Workspace
.xcodeproj の実体は、ディレクトリ(XCodeをインストールすると、ファイルに見える?)なので、中に格納されている、project.xcworkspace を指定する。
Scheme
デフォルトでプロジェクトと同名のものが作成されるので、とりあえず同じにしておく。
devicetypeid
インストールされている、iPhoneシミュレータのデバイスタイプIDを確認して設定する
xcrun simctl list devicetypes

結果以下のような設定に
{
"variables": {
"SDK_VERSION": "18.2"
},
"sdk": "iphonesimulator${SDK_VERSION}",
"workspace": "/Users/piroto/Workspaces/GuitarTheoryApp_VSCode/GuitarTheory/GuitarTheory.xcodeproj/project.xcworkspace",
"scheme": "GuitarTheory",
"debugConfigurations": [
{
"name": "Simulator",
"cwd": "${buildPath}",
"program": "ios-sim",
"args": [
"launch", "GuitarTheory.app/",
"--devicetypeid", "com.apple.CoreSimulator.SimDeviceType.iPhone-16, ${SDK_VERSION}"
]
}
]
}
シミュレータの実行
実行ボタンを押すと、ビルドが走って、シミュレータでプログラムが実行される。

“xcode-select: error: tool ‘xcodebuild’ requires Xcode, but active developer directory ‘/Library/Developer/Comm
のようなエラーが出た場合の対処
Licence xcodebuildコマンドが効くか確認。ライセンスが出れば成功
$ sudo xcode-select -s /Applications/Xcode.app/Contents/Developer $ sudo xcodebuild -license
Copilotさん
ちゃんといろいろ提案してくれる。

VSCodeと同時に、XCodeも開いて、VSCode側でコード編集すると、XCode側のプレビューなども即時反映される。

めでたし。

