読者です 読者をやめる 読者になる 読者になる

naichi's lab

3日後の自分(他人)への書き置き

【Unity】Unity Cloud BuildでiOSビルドに必要なMobile Provision Fileとp12 Fileを用意する

Unity iOS Cloud Build

f:id:naichilab:20150917124702p:plain

環境

  • 記事更新日:2016/08/29
  • XCode Version 7.0.1 (7A1001)

はじめに

この記事ではタイトルの通り、Unity Cloud BuildでiOSアプリのビルドをするのに必要な下記2つのファイルを用意する方法をまとめておきます。

  • Mobile Provision File
  • p12 File

f:id:naichilab:20150907235805p:plain

調べながら書いてますので間違っていたら指摘お願いします。

ファイルの種類

Mobile Provision Fileとp12 Fileには開発用(Development)と配布用(Distribution)の2種類があり、配布用はさらにApp Store公開用とAd Hoc(限定公開)用に分かれます。

それぞれの特徴は下記の通りです。(たぶん)

  • 開発用(Development)
    • App Storeへの公開はできない。
    • Mobile Provision File作成時に選択した端末にのみインストール可能。
  • 配布用(Distribution)
    • App Store用
      • App Storeへ公開するためのもの。
      • これを使ってUnity Cloud Buildでビルドしても、App Storeへ公開しないと端末へインストールできない。
    • Ad Hoc用
      • App Storeへの公開はできない。
      • Mobile Provision File作成時に選択した端末にのみインストール可能。

私の目的はUnity Cloud Buildで自動ビルドしたバイナリをそのままAppStoreに提出する事なので、
この記事の手順は全て配布用(Distribution)且つAppStore用のファイル作成手順として進めます。 App Storeを介さず、Unity Cloud Buildからのメール経由でiOS端末にインストールしたい場合は、Ad Hoc用のファイルを作るようにしてください。

前提

Apple Developer Program - Apple Developer

iOSアプリをリリースするために必要なApple Developer Programに加入してください。

年間$99。

高いですね。

Mobile Provision File を取得する

まずはCertificate(開発者登録証明書)をXCodeで作ります。

  1. XCode -> Preferences...

  2. Accounts -> Apple IDs -> View Details...

    f:id:naichilab:20150908010725p:plain

  3. Signing Identities -> iOS Distribution -> Create

    f:id:naichilab:20160830003743p:plain

    CreateではなくResetと表示されている場合は作成済みです。

    また、下記画面が出た場合はSafariでApple Developer Centerに入り、ライセンス同意しましょう。 f:id:naichilab:20160830003605p:plain

次はSafariを開き、iOS Developer CenterでApp IDを登録します。

  1. Apple Developer Programを開き、右上のリンクからメンバーセンター

  2. サイドバーからCertificates, IDs & Profiles

    f:id:naichilab:20160830004229p:plain

  3. Identifiers -> App IDs -> [+]

    f:id:naichilab:20150908012147p:plain

  4. 情報を入力

    • App ID Description

      App IDに覚えやすい名前をつける。これは後で変えられます。

      今回は自分のアプリ共通で使えるWildCard App IDを作るので
      開発者名の naichilab って名前をつけました。

    • App ID Prefix

      変更不可

    • App ID Suffix

      Explicit(厳密)かWildcard(前方一致)を選びます。Wildcardはプッシュ通知やアプリ内購入などが制限されます。すぐ下に利用サービスを選ぶ部分があってWildcardを選ぶとグレーアウトするので使えない機能が分かります。

      今回はこれらを使うつもりないのでWildcardを選びました。com.naichilab.* と入力。

    • App Services

      どれも使うつもりないので全部OFF

    WildCard App IDの権限で問題ない場合は、複数アプリ間で使いまわせるようです。
    ですがExplicitでないとダメな場合は、面倒ですがアプリごとに都度作成しましょう。

  5. Continue & Submit

    Safariじゃないと読み込みが終わらず進めなくなることがあります。

    f:id:naichilab:20150908013334p:plain

    作成完了しました。

最後にProvisioning Profileを生成

  1. Provisioning Profiles -> All -> [+]

    f:id:naichilab:20150908014028p:plain

  2. App Storeを選択してContinue

    冒頭にも書きましたが、用途に合わせてApp StoreAd Hocを使い分けてください。

    f:id:naichilab:20150908014201p:plain

  3. さきほど作成したAppIDを選択

    f:id:naichilab:20150908014312p:plain

  4. XCodeから登録したCertificateを選択

    f:id:naichilab:20150908014446p:plain

  5. (Ad Hocを選択した場合) インストール可能にするデバイスを選択

    f:id:naichilab:20150909011532p:plain

  6. 適当に名前をつけてGenerate

    f:id:naichilab:20150908014635p:plain

XCodeに戻ってダウンロードします

  1. 開き直すとProvisioning Profiles に作成したものが追加されています。Downloadを押してダウンロード。

    f:id:naichilab:20160831000826p:plain

  2. 右クリックしてShow in FinderするとMobile Provision Fileが見つかる。

    f:id:naichilab:20150908015533p:plain

    名前が分かりづらすぎるので、複製して適当にリネームしておきましょう。

p12 File を取得する

以前はXCodeから簡単に出力できたんですが、今はできなくなってますね。。。 手順が面倒になってます。

  1. アプリケーション -> ユーティリティ -> キーチェーンアクセスを起動

  2. メニュー -> 証明書アシスタント -> 認証局に証明書を要求...

    f:id:naichilab:20160830010316p:plain

  3. 情報を入力

    • メールアドレス:Apple Developer Programに登録したメールアドレス
    • 通称:Apple Developer Programに登録した開発者名
    • CAのメールアドレス:空白
    • ディスクに保存
    • 鍵ペア情報を指定

    f:id:naichilab:20160830010907p:plain

  4. 場所を指定して保存

    f:id:naichilab:20160830011005p:plain

  5. 鍵ペア情報を指定して続ける

    • RSA 2048bit

    f:id:naichilab:20160830011042p:plain

  6. これでやっとCSRの作成完了

    f:id:naichilab:20160830011109p:plain

  7. またまたSafariでApple Developer Programを開き、右上のリンクからメンバーセンター

  8. サイドバーからCertificates, IDs & Profiles

  9. Certificates -> All を開き、+

    f:id:naichilab:20160830012315p:plain

  10. typeは ProductionApp Store and Ad Hoc を選択し、Continue

    f:id:naichilab:20160830012352p:plain

  11. CSR作れって画面が出るけど、すでに作ったのでそのままContinue

    f:id:naichilab:20160830012432p:plain

  12. 作成したCSRを選択してContinue

    f:id:naichilab:20160830012449p:plain

  13. Your certificate is readyが表示されたら、Downloadし、Doneで閉じる

    f:id:naichilab:20160830012522p:plain

  14. ダウンロードした.cerファイルをダブルクリックし、キーチェーンアクセスに登録

  15. キーチェーンアクセス -> ログイン -> 証明書 に登録されたことを確認する

    f:id:naichilab:20160831003503p:plain

  16. キーチェーンアクセス上で、追加された証明書を右クリック -> 書き出す

    • 名前:自由に
    • 形式:p12

    f:id:naichilab:20160830013248p:plain

  17. パスワード、確認ともに空白のままでOK

    f:id:naichilab:20160830013333p:plain

  18. キーチェーンのパスワードを聞かれるのでMacのパスワードを入力して書き出し

長かった・・・

まとめ

これで.mobileprovisionファイルと.p12ファイルが手に入りました。

次回はいよいよUnity Cloud Buildで自動ビルド設定を行います。

参考にしたサイト