macOS アプリケーションの手動でのサンドボックス化
MacOS アプリケーション開発 への移動
- メモ: サンドボックス化は、IDE を使用して行うことをお勧めします。 手動での手順は IDE を使った方法よりずっと複雑であり、ここでは IDE を使わずに作業をする必要がある人のために概要だけを説明します。
macOS アプリケーションのサンドボックス アプリケーション パッケージの作成に RAD Studio IDE を使用しない場合には、Mac 上で必要な手順を実施することができます。 このセクションではこの処理の基本的な概要を示しますが、詳細は Apple 社のドキュメントを参照してください(ここでもいくつかのリンクを紹介しています)。
Mac 上で、<プロジェクト>.entitlements ファイルを作成し、アプリケーション バンドルに追加し、そのバンドルにコード署名し、バンドルをパッケージ化して、Apple に提出する必要があります。
Apple からの要件
必要な要素と、それに関する Apple からの情報を以下に示します。
- 関連付けられた <プロジェクト>.entitlements ファイル
- コード署名
- コード署名コマンドのマニュアル ページ
- コード署名ガイド
- アプリケーションにコード署名をする方法
- 例:
codesign -s"証明書名" -f "アプリケーション バンドル名"
- productbuild
- installer(アプリケーションのインストールをテストするためのもの)
Mac 上での macOS アプリケーションの手動でのコード署名とビルド
アプリケーションを Mac App Store に提出する場合は、コード署名とプロビジョニングが必要です。その作業は、IDE を使って行うことも、手動で行うことも(一般的な方法を以下で説明します)可能です。
メモ:
-
- アプリケーションを Mac App Store に提出するための配布用証明書を取得することを必ずしてください。
- Mac でサンドボックスを使用するには <project>.entitlements ファイルが必要です。
macOS アプリケーションのコード署名と製品インストーラのビルドを手動で行うには:
- アプリケーションを IDE でビルドし、macOS に配置します。
- Mac で[ターミナル]ウィンドウを開きます。
- paserver の scratch-dir に移動します:
Applications/Embarcadero/PAServer/21.0/scratch-dir/machinename-remoteprofilename/
- 以下のコマンドを実行します。
- アプリケーションのコード署名:
sudo codesign -f -v -s "Mac Developer: <名> <姓>" "<アプリケーション名>.app"
- productbuild によるインストーラ パッケージの作成:
sudo productbuild --component "<アプリケーション名>.app" /Applications --sign "Mac Developer: <名> <姓>" --product "<アプリケーション名>.app/Contents/info.plist" <アプリケーション名>.pkg
- アプリケーションのコード署名:
関連項目
- RAD Studio を使用したmacOS アプリケーションのサンドボックス化
- macOS から Mac App Store へ提出する準備