2012-04-13 42 views
0

我想要一個「自包含」的應用程序(我不知道是否使用了正確的單詞。「將應用程序放入垃圾箱將刪除所有內容」是我的意思)。但該應用程序需要一些資源才能運行。我通常把這些資源放到一個文件夾中。我想將這些資源移入App文件夾(包內容)。我可以這樣做嗎?這是一個很好的做法嗎?在Mac OS App中創建一個文件夾

當我測試從Xcode直接運行的應用程序,該應用程序運行良好。但是,如果我從查找器運行它,該應用程序會說創建資源文件夾失敗,因爲權限被拒絕。我檢查了應用程序的文件夾權限 - 用戶(我)具有讀/寫權限。我想知道是什麼導致了這種不同的行爲。

最後一個選項是使用應用程序支持文件夾,但我不想在用戶刪除應用程序時留下痕跡。

有人可以幫我嗎?

+0

我相信這是在Mac OSX上打包應用程序的標準。我也相信你需要在目錄上執行priv才能訪問它。 – jahroy 2012-04-13 23:27:43

回答

3

應用程序位於目錄/Applications中,用戶通常不具有寫入權限。要求應用程序在系統文件夾中具有寫入權限是非常糟糕的做法。

運行時文件應該存在於~/Library/Application Support中。儘管該文件夾往往會累積一些垃圾,除非你的應用程序留下了真正大的文件,這應該不成問題。

如果您希望自己的應用程序是自包含的,那麼它需要隨時提供所需的所有文件,而不是將任何內容寫入磁盤。

+0

對我來說,聽起來像所討論的資源不是_WRITTEN BY_應用程序在運行時,而是_BUNDLED WITH_應用程序在構建時。 – jahroy 2012-04-13 23:36:37

+0

@jahroy:如果這樣的話就沒有問題了。 – 2012-04-13 23:42:49

+0

對不起,我應該更清楚的問題。我確實打算在運行時間修改資源。我將使用應用程序支持路線。謝謝 – 2012-04-13 23:49:43

相關問題