30
29

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

What's New in Xcode App Signingまとめ

Posted at

WWDCのWhat's New in Xcode App Signing、まとめてみました。

内容

What's New in Xcode App Signingの内容は以下の通りでした。

  • Fundamentals
    • 02:30 - 07:30
    • どのようにしてXcodeがSigningを行うかを解説
  • Signing Certificate per Mac
    • 07:30 - 10:00
    • developmentのcertificateについて、PCごとにインストールするようになった点を説明
  • Signing in Xcode
    • 10:00 - 29:00
    • Xcode8から、Signingがどう変化し、ワークフローがどう変化するかを解説
  • Best Practices
    • 29:00 - 終わりまで

Fundamentals

Fundamentalsは、アプリのSigningに必要なCertificates、Provisioning Profile、Entitlementについて早足での解説でした。
まずは、それぞれのファイルの役割について解説し、
Screen Shot 2016-06-20 at 00.28.17.png
その後以下の画像のように、実際のSigningの流れについて解説をしていました。
Screen Shot 2016-06-20 at 00.28.52.png

Signing Certificate per Mac

Signing Certificate per Macは、「開発用p12ファイルを開発マシン間でやり取りする」、という複数台のPCで開発を行う際の問題に対する解決策として、Signing Certificate per Macという仕組みを導入した、という話でした。
Screen Shot 2016-06-20 at 00.33.36.png
Signing Certificate per Macは、Debugビルド用の証明書については個々のMacで別個に作成して使えるようにしよう、というもので要点としては以下の通りです。

  • Debugビルドonly
  • XcodeとiOS Dev Centerの双方で生成できる
  • Xcode8移行から生成可能
  • Xcode7以前でも使用可能

Signing in Xcode

Signing in Xcodeでは、Signingに関する問題を解決するためにXcodeのワークフローとUIを変更した、という話でした。

変更点としては、以下の通りです。

  • SigningがBuild SettingsからGeneralタブに移動
  • Automatic SigningとCustomized Signingという仕組みを導入
    • Automatic Signingでは、Capabilitiesに変更を加えた場合などに、自動的にProvisioning Profileが更新される
    • Customized Signingは今までのApp Signingと同じ。
  • Provisioning Profileのエラーでは、fix issueのみではなく、説明的なエラーメッセージを表示するように
  • Automatic SigningでのProvisioning Profileのステータス変更について、Report Navigatorペインで表示されるように。
  • Provisioning Profileの更新に伴うProvisioning Profileの選択が不要に

まず、1点目については、以下の画像のようにSigningがGeneralタブに移動しており、TeamやProvisioning Profile、Certificatesの設定が一目でわかるようになりました。
Screen Shot 2016-06-20 at 07.36.36.png

Automatic Signingについてですが、Session動画の16:30-17:30あたりを確認するのが一番わかりやすいかと思います。
(backgroundでXcodeが全て処理するため)

次にfix issueの改善についてですが、Provisioning Profileで何かエラーが発生した場合に以下の画像のように、エラーの発生箇所について詳細に記述されるようになります(Push NotificationとiCloudを修正すれば良いことがわかる)。
Screen Shot 2016-06-20 at 07.44.00.png

Automatic SigningによるProvisioning Profileのステータス変更については、以下の画像のように、Report Navigatorペインで確認することができます。
スクリーンショット 2016-06-20 13.33.21.png

Provisioning Profileの更新については、PROVISIONING_PROFILE_SPECIFIERという新たにBuild Settingsに追加された名前(Bundle Identifier?セッションではUnique IDと説明)により自動で解決が行われるため、開発者が選択しなおす必要がないそうです。
興味のある方は、22:00-22:30のあたりを確認してみてください。

Best Practices

最後のBest Practicesは、Xcode8からのワークフローに対応して、以下のように開発を進めよう、というものでした。

  • 開発時には、Automatic Signingを使おう
  • GeneralタブのSigningとCapabilitiesタブで全てを管理しよう
  • Customized Signingを使う場合にも、CODE_SIGNING_IDENTITYをデフォルトのままにしておこう(Signing Certificate per Macのため)

参考

30
29
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
30
29

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?