キー「LSEnvironment」をアプリ バンドルの Info.plist に追加できます。値は、キーと値の文字列を含むディクショナリにすることができ、これらのキーと値のペアは、Launch Services によってアプリが起動されたときに環境に追加されます (たとえば、ターミナルからではなく、Finder または Dock から)。
<key>LSEnvironment</key>
<dict>
<key>ENV_VAR</key>
<string>value</string>
</dict>
ただし、(Snow Leopard での) 私のテストでは、少なくとも既存のアプリの Info.plist を編集するときは、テストが少し不安定でした。基本的に、Launch Services は最初にアプリに遭遇したときにアプリの Info.plist のこの部分をキャッシュし、ディスク上の変更を必ずしも認識しません。たとえば、App Bundle を複製したり、一時的に別のフォルダーに移動したりすることで、Info.plist を再読み込みするように促すことができます。もちろん、過剰な解決策はlsregister
、キャッシュをフラッシュして再構築するために使用することです。
/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -kill -seed
このキャッシュの問題はエンド ユーザーには影響しません。Info.plist を微調整するだけです。また、ソース Info.plist に変更を加えてから Xcode を使用してアプリをビルドしても、影響はありません。