App Developer 証明書を入手

現在、macOS のアプリケーションは、Developer ID 証明書で署名して Apple に提出して公証を受ける必要があります (公証を受けていなくても実行する方法はありますが)。RubyMotion のアプリケーションは、Xcode 自体や xcrun altool などを使わなくても RubyMotion のコマンドで公証を受けることができます。ここでは、Apple Developer Connection に登録しているという前提で進めます。

まずは、Developer ID 証明書を生成する必要があります。すでに証明書を入手している場合は、Notarization (公証化) を見てください。

macOS 上で「キーチェーンアクセス.app」を立ち上げて、メニューから、キーチェーンアクセス->証明書アシスタント->認証局に証明書を要求... を選びます。

ユーザーのメールアドレスには、ADC に登録したメールアドレスを入れて、通称のところは任意の名前を入れます。デフォルトでは自分の名前になっているのではないかと思います。そして、要求の処理で、ディスクに保存を選び、鍵ペア情報を指定にチェックを入れます。

これで CertificateSigningRequest.certSigningRequest というファイルが保存されますが、その際に、鍵ペア情報を指定することになるので、デフォルトの鍵サイズ 2048 ビットとアルゴリズム RSA を選択したままで続けるをクリックします。変更することもできますが、このままでいいでしょう。

次に、ADC (https://developer.apple.com/) にログインして、Account で Certificates, IDs & Profiles に入ります。

Certificates の隣の + をクリックして、証明書を作成します。

ここでは、App Store 外で配布したいので、Developer ID Application を選んで右上の Continue をクリックします。

ここで、Certificate Signing Request (CSR) ファイルを要求されるので、上で保存した CertificateSigningRequest.certSigningRequest を選んでアップロードします。

これで証明書が作成されるので、ダウンロードすると、developerID_application.cer というファイルがダウンロードされます。これをダブルクリックするか、キーチェーンアクセス.app のメニューからファイル->キーチェーンを追加... を選んでキーチェーンアクセスに追加します。

これで、RubyMotion app に Developer ID が登録できるので、Rake file に

app.codesign_certificate = "Developer ID Application: 通称 (DEV ID)"

を追加します。通称のところは、Developer として証明書に登録された名前で、DEV ID は、証明書に示されている Developer ID です。キーチェインの証明書に出ているままのものを入れます。