アプリ開発日誌
2016.10.20
Xcode8での証明書の取り込み・管理方法
こんにちは、エンジニアの松川です。
Xcode8がリリースされてから約1ヶ月経ちましたが、皆さん慣れてきましたか!
僕は触った当初は主にGlobalの設定やBuild Setting周りが大幅に変更されていたので戸惑いましたが、大分操作に慣れてきました!
今回のアップデートでエディタや拡張機能の追加、デバッガの改善、フォントの変更など多数の修正が行われていますが、今日は証明書周りを自動化してくれる「Automatically manage signing」について書きたいと思います。
では、さっそくいってみましょう。
今までの証明書の取り込み・管理方法
まず、今までの証明書の共有やダウンロードは下記のような方法で行なっていました
※別のPCで証明書が作成されている想定
- Certificateの作成者がキーチェーンアクセスで.p12ファイルを作成して共有する必要がある
- XcodeからApple Developerアカウントを連携してProvisioning Profileをダウンロード(.p12ファイルは別途取り込んでおく必要あり)
- Apple DeveloperのサイトからProvisioning Profileをダウンロード(.p12ファイルは別途取り込んでおく必要あり)
次に証明書を管理するアプリケーションは下記を使用
- iPhone構成ユーティリティ
- Apple Configurator2
問題点
- 万が一.p12ファイルを紛失した場合は、再度Certificateを作成する必要がある
- Provisioning Profileを読み込んだ際に、Certificateと紐づかない時があるが原因がわかりにくい
- iPhone構成ユーティリティはEl Capitanまで使用していたが、macOS Sierraでは起動時にクラッシュしてしまうため使用できない
- Apple Configurator2はPCに端末を接続していないと証明書を取り込めない
- そもそもが証明書を手動でダウンロードして設定する方法がdeprecatedになっている
Automatically manage signing
Xcode8からできた機能で、この項目にチェックをつけると自動的に証明書の作成・更新を行ってくれます。
※証明書の作成とは、.p12ファイルの作成を意味します
証明書ファイルのやり取りが一切不要!
またProvisioning Profileの詳細な情報・状態も確認できるので、何でエラーが出ているのかがわかりやすくなりました!
最後に
証明書の手動設定が非推奨になっていることから、今後はこのやり方が主流になっていくと思います。
今までは1つのプロジェクトを共有する際に、証明書を各自が読み込んでいないとビルドできなかったり、持ってない証明書が設定してあってエラーが出たりと意外と手がかかっている箇所でした。
「Automatically manage signing」を使用する事で証明書の設定をAutomaticにしておけばいいので、アカウントさえ共有されてれば証明書関係でビルドエラーになる事はありませんし証明書のやり取りといったコミュニケーションコストも減ります。
今後プロジェクトのアップデートがあるタイミングで、証明書の設定方法のアップデートも検討してみてはどうでしょうか。