はじめに
新たにテスト端末をApple Developerに登録した場合、再度Provisioning Profileを作成し直す必要がありますが、面倒なのでfastlaneで自動化できないか調べてみました。
(matchで証明書を管理している前提の方法です。)
環境
・macOS Catalina 10.15.7
・Xcode 12.2
・CocoaPods 1.10.0
・zsh 5.7.1
・bundler 2.1.4
・fastlane 2.170.0
・Visual Studio Code 1.51.1
本題
テスト端末を追加した後に、開発用のProvisioning Profileを自動で更新したい場合は、Fastfile内の開発時に使用するレーンなどに以下を追加しておけばよい。
sync_code_signing(type: "development", force_for_new_devices: true)
ただし、以下のようにリリース用のProvisioning Profileでforce_for_new_devicesを指定すると無視されるため注意。
sync_code_signing(type: "appstore", force_for_new_devices: true)
※補足:テスト端末の追加に関して
fastlaneを使ってApple Developerにテスト端末を追加することもできる。
・Fastfileを使う場合
register_devices( devices: { "{デバイス名}" => "{端末のUUID}" } )
・ターミナルで実行する場合
プロジェクトファイルのある階層で以下コマンドを実行。
bundle exec fastlane run register_devices name:"{デバイス名}" udid:"{端末のUUID}"
おわりに
次回はfastlaneを使ってFirebase CrashlyticsにdSYMをアップロードする方法について調べてみたいと思います。
参考
・sync_code_signing - fastlane docs
・register_devices - fastlane docs
・ios - Fastlane: proper way to add a device to provisioning? - Stack Overflow