2012-02-23 10 views
2

のファイルを置換/更新すると、管理者権限でセットアッププログラム(NSISで生成されたものなど)を実行することにより比較的簡単にファイルを更新できます。 Macにも同様の方法がありますか?インストールされたアプリケーションバンドル内のファイルを交換することは可能ですか?それはどのように行われますか?Windowsにソフトウェアをデプロイする際にMac OS X Appのバンドル

ありがとうございます!

答えて

1

それはアプリのApp Store経由で配布したり、署名した(あるいはその両方)だ場合は、ないは(それはそれ以降の試行で起動しない場所)にそれを壊すことなく、アプリケーションバンドル内のファイルを置き換えることができます。

あなたがしようとしていることを説明するのに十分な情報を質問に提供していません。これはと書いてあるアプリケーションのためのものですか、またはサイトライセンスを持つアプリケーションや、まったく制御できないアプリケーションのためのものですか?

これは、あなたが書いているアプリケーションのためであれば、Appleはその後、~/Library/Application Support/または~/Library/Cache/または他のディレクトリにリソースをインストールをお勧めします、そして - ほとんどの場合 - あなたはフェッチして保存するアプリ内でいくつかのメカニズムを作成する必要があると思います更新されたリソース。 NSCacheのように、MacOSが提供するものがいくつかあるかもしれません。

+0

ありがとうございます。私はMacを初めとしており、自分のJavaベースのソフトウェアをMac OS X用の適合形式で展開したいと考えています。このソフトウェアはApp Store経由で配布されておらず、署名もされていません。私はJarBundlerを使用してAppバンドルを作成しています(+ plistファイルのいくつかの手動適応)。そして、CDに展開するためのdmgを作成しています。ユーザーデータはuser.homeに格納されますが、残りはアプリケーションバンドルに含まれます。アプリバンドルはディレクトリ構造のようです。この構造内のファイルを自動的に置き換えることができるかどうかは疑問でした。それ以外の場合、ユーザーは手動でファイルをコピーする必要があります。 – user1227776

+0

特に〜/ライブラリ/アプリケーションサポート '〜'〜/ライブラリ/ Cache/'や'〜/ Library/Preferences'で提供されているフォルダ階層を使うのは賢明でしょう。 * MacOSの将来のバージョンでは、アプリケーションとアプリケーションパッケージ。 –

+0

あなたは管理者の特権を持っている限り、署名されていないアプリケーションバンドルはプログラムフォルダ内にあっても簡単に書き込むことができます。私は別のプロセスを使用して、その内容に置き換えます。うまく動作するようです! – user1227776

関連する問題