我正在嘗試編寫一個Cocoa應用程序,使Mac上的Android開發人員更容易創建Android應用程序。
當用戶按下應用程序上的按鈕時,我希望它將某個目錄添加到Mac上的環境$ PATH變量。
是否有另一種方式來通過Cocoa來做到這一點,而不是打開.bash_profile文件並手動添加路徑?
感謝您提前提供任何幫助。
我正在嘗試編寫一個Cocoa應用程序,使Mac上的Android開發人員更容易創建Android應用程序。
當用戶按下應用程序上的按鈕時,我希望它將某個目錄添加到Mac上的環境$ PATH變量。
是否有另一種方式來通過Cocoa來做到這一點,而不是打開.bash_profile文件並手動添加路徑?
感謝您提前提供任何幫助。
您可以使用標準C庫調用getenv()
和setenv()
來更改應用程序自身的$ PATH。只有您的應用程序及其子進程才能看到此更改。
換句話說,$ PATH更改不會是全局的。如果你想這樣做,你將不得不改變啓動文件。
通過將一個字典文件寫入Home/.MacOSX/environment.plist,您可以設置全部用戶進程的環境。但是,這隻在註銷後發生。
我認爲實現您的目標的最好方法是使用NSTask作爲您自己的應用程序的子進程啓動相關程序,通過在啓動NSTask對象之前發送一個setEnvironment:
消息來設置其環境。