PAServer を使用して、Mac OSX 上で FireMonkey アプリケーションを実行できます。しかし今、アプリケーション Mac OS (Windows の MSI のようなもの) をデプロイしたいと考えています。これどうやってするの?
2 に答える
アプリケーション バンドルについて詳しくは、こちらをご覧ください。
Delphi が PAServer を介して作成および展開するアプリケーション バンドルの使用
PAServer を使用しているため、アプリケーション バンドルが既に作成されていることがわかります。PAServer 経由でプログラムを実行した後、Mac の次のフォルダでアプリケーション バンドルを探します。
/Users/[ユーザー名]/Applications/Embarcadero/PAServer/scratch-dir/[プロファイル名]
プロジェクトの名前が Project1 の場合、そのフォルダーに Project1 という名前のアプリケーション バンドルが表示されます。
上記の wiki 記事を読むと、Project1 には .app という「隠し」拡張子があり、全体が実際にはアプリケーションを実行するために必要なすべてのファイルを含むフォルダーであることがわかります。
このアプリケーション バンドルを Mac 上で直接実行してください。libmidas.dylib などの dylib が見つからないというエラーが表示された場合は、それらを PAServer フォルダーからアプリケーション バンドルの MacOS フォルダーにコピーするだけです。
Mac OS ユーザーには、アプリケーション バンドルはアイコン付きの単一のプログラム ファイルとして表示されます。ユーザーは、アプリケーション バンドルをダブルクリックしてアプリケーションを実行したり、ドックにドラッグしたりできます。
アイコンの変更
アプリケーション バンドルにはデフォルトで Delphi アイコンがありますが、独自のアイコンに置き換えることができます。Mac では、Finder でアプリケーション バンドルを右クリックし、[パッケージの内容を表示] を選択します。そこで、Contents/Resources フォルダーで .icns ファイルを探します。
XCode と共にインストールされたIcon Composerアプリケーションを使用して、既存の画像ファイルから .icns アイコン ファイルを作成します。
バンドルの中をのぞく
中身の残りの部分を中をのぞいてみましょう。必要な dylib、プログラム ファイル、Info.plist ファイルが表示されます。このファイルは、アプリケーション ID、署名、およびその他の重要な情報を含むテキスト ファイルです。
展開の詳細
アプリケーションがアプリ バンドルに含まれている場合、標準的な方法は、アプリケーション バンドルをディスク イメージ .dmg ファイル内に配置することです。これにより、ユーザーはアプリケーションをアプリケーション フォルダーにドロップできます。
アプリケーションに追加のファイル、ライブラリ、データベース、またはフレームワークなどのインストールが必要な場合は、パッケージを作成する必要があります。これを行うには、 PackageMakerを利用できます。パッケージは、言及したWindowsの「msi」インストーラーに似ています。
ユーザーがパッケージをダブルクリックすると、Installerによって実行されます。ウィザード スタイルのインターフェイスを備えており、ユーザーはアプリケーションをインストールすることができます。コード署名証明書を使用してパッケージに署名することもできます。
アプリケーション バンドルをアプリ ストアに含める場合は、署名する必要があります。また、サンドボックス化する必要があります。
サンドボックスと Mac App Store - 2011 年 11 月 2 日
大多数の Mac ユーザーはマルウェアから解放されており、私たちはそれを維持するためのテクノロジに取り組んでいます。2012 年 3 月 1 日の時点で、Mac App Store に提出されたすべてのアプリはサンドボックスを実装する必要があります。アプリをサンドボックス化することは、アプリがアクセスできるリソースを制限し、悪意のあるソフトウェアがユーザーのシステムを侵害するのをより困難にすることで、システムとユーザーを保護する優れた方法です。詳しくは、アプリ サンドボックスページをご覧ください。
アプリを OSX システムにデプロイするには、アプリケーション バンドルを作成する必要があります。
詳細については、これらのリンクを確認してください