我有必要重新啓動我的應用程序。一派,有兩個建議:
1. https://gist.github.com/2204627
直接得到了lsboxd消息。
2. http://13bold.com/tutorials/relaunching-your-application/
了LSOpenFromURLSpec()返回-10827 ...消息
兩者都涉及到沙盒。
我想知道,有沒有什麼辦法來重新啓動我的應用程序沙箱部署?謝謝!
我有必要重新啓動我的應用程序。一派,有兩個建議:
1. https://gist.github.com/2204627
直接得到了lsboxd消息。
2. http://13bold.com/tutorials/relaunching-your-application/
了LSOpenFromURLSpec()返回-10827 ...消息
兩者都涉及到沙盒。
我想知道,有沒有什麼辦法來重新啓動我的應用程序沙箱部署?謝謝!
沙盒應用程序可以啓動使用NSWorkspace
的launchAppWithBundleIdentifier:
自身的新副本;通過在選項NSWorkspaceLaunchAsync
,NSWorkspaceLaunchNewInstance
異步運行創建您的應用程序的新進程和調用返回後終止當前進程(或撥打電話爲響應一個NSApplicationWillTerminateNotification
的一部分)。
我已經試過launchAppWithBundleIdentifier:...方法簡單地用「com.apple.dock」,似乎工作,但仍然得到了「lsboxd:@AE ......」在控制檯中。我不確定它是否與沙盒限制衝突? – Terry
@Terry - 也許我誤解了,你不應該用「com.apple.dock」這樣做,這是你自己的應用程序在沙箱下運行時重新啓動自己的方法。也就是說,也許這種方法不再有效,沙箱是臭名昭着的,如果可能的話應該避免。該方法來自開發人員論壇上的一個主題 - 今年早些時候搜索「launchAppWithBundleIdentifier」 - 並在其中一名Apple工程師確認了該過程。如果它不再在該帖子中工作,也許蘋果工程師會迴應。 – CRD
「當部署沙箱時」是什麼意思? – TheAmateurProgrammer
@theAmateurProgrammer說,我的意思是我的應用程序是沙盒。 – Terry
您的應用在編譯時應該被沙盒化。爲什麼你需要重新啓動你的應用程序? – TheAmateurProgrammer