😸
DeployGateにiOSアプリをデプロイできるようにする
これは何?
dg
コマンド (DeployGate CLI) で iOS アプリをデプロイしようとしたら、以下のようなエラーが出てデプロイできない。
no applicable iphone distribution or apple distribute certificate found on your mac
かなり解決に時間かかったのと、DeployGate や Apple の公式ドキュメントでピンポイントの情報が見つけられなかったので、誰かの役に立つかと思い、手順を残します。
なお M1 Mac における dg
コマンドのインストールで困ったときは DeployGate がサクッとM1に入らなかった話 が参考になるかも知れません。
手順
1. Apple Developer Programに登録する
2. Apple ID を Xcode に登録する
Xcode の Preferences
から Accounts
タブを開き、Apple Developer Programに登録した Apple ID を登録する
3. Certificate Signing Request
-
キーチェーンアクセス
アプリで認証局に証明書を要求...
を選択する:
-
証明書情報
の画面が開くので以下のように入力して、Certificate Signing Request(証明書署名要求)ファイルをローカルに保存する-
メールアドレス
: Apple Developer Programに登録した Apple ID -
通称
: 証明書に利用したいFQDN (例:example.com
) -
CAのメールアドレス
: 空欄 -
要求の処理
:ディスクの保存
-
4. Distribution Certificate
-
Certificates, Identifiers & Profiles を開く。
- このページへのアクセス権がない場合は、管理者に依頼して付与してもらう。Roles for the Apple Developer Program によると、
Account Holder
とAdmin
には権限があるが、App Manager
にはデフォルトでは権限がない。
- このページへのアクセス権がない場合は、管理者に依頼して付与してもらう。Roles for the Apple Developer Program によると、
-
Certificates
を選択して+
アイコンをクリックする。
-
Software
でApple Distribution
を選択してContinue
で次に進む。
- 前セクションで作成したCertificate Signing Requestファイルをアップロードして
Continue
で次に進む
- 次の画面で Apple Distribution 証明書がダウンロードできるので、ローカルにダウンロードして、ダブルクリックして
キーチェーンアクセス
アプリにインストールする
5. Identifiers
- Certificates, Identifiers & Profiles を開く。
-
Identifiers
を選択して+
アイコンをクリックする。 -
App IDs
を選択して、Continue
をクリックする。 -
App
またはApp Clip
を選択する画面が出るので、App
を選んでContinue
。 -
Description
とBundle ID
を入力する。Bundle ID
には Xcode のBundle Identifier
で設定した値を入力する。
6. Devices
- Certificates, Identifiers & Profiles を開く。
-
Devices
を選択して+
アイコンをクリックする。 - DeployGate にデプロイした iOS アプリをインストールしたい iOS デバイスの UDID を登録する。
7. Profiles
- Certificates, Identifiers & Profiles を開く。
-
Profiles
を選択して+
アイコンをクリックする。 -
Ad Hoc
を選択してContinue
。 - 上の
Identifiers
セクションで作成したApp ID
を選択してContinue
。 - 上の
Certificates
セクションで作成したCertificates
を選択してContinue
。 - Provisioning Profile が作成されるので、ダウンロードして、ダブルクリックして
キーチェーンアクセス
アプリにインストールする
8. dg deploy を実行する
dg deploy
を試してみる。今度はうまく行きました!
今後の展望
次はFlutterアプリをGitHub ActionsでDeployGateのデプロイを自動化!を参考に、GitHubリポジトリからの自動デプロイに挑戦したいと思います。
GitHubで編集を提案
人工知能を活用したアプリケーションやサービスを活用し、内発的動機付けで行動するエンジニア、起業家、社会起業家をサポートするコミュニティーです。 singularitysociety.org
Discussion