2010-02-06 32 views
0

我有一個要分發的應用程序。 幾乎所有東西都是自包含在一個包中,所以我可以將這個包放入第一個版本的DMG中 - 但是這對升級不起作用,所以我想我最好先提前完成這個過程。PackageMaker會爲我工作嗎?

我一直在看PackageMaker,它看起來很簡單。然而,我有一些非常具體的要求,可能會導致問題,並且從PM文檔中看不出這是否甚至是可能的:

首先,我希望安裝程序自動選擇安裝取決於以前版本的應用程序是否先前已安裝,該應用程序的兩個不同版本。其次,我不想只覆蓋以前的應用程序捆綁包,我只想讓安裝程序覆蓋其中的文件並添加新的文件 - 換句話說,我希望應用程序捆綁包中的某些文件保留以前的版本。

這是我可以用PackageMaker實現的東西,還是我應該尋找不同的方法?

回答

0

您可以使用安裝程序包進行很多操作,例如運行一個shell腳本,該腳本可以讓您執行所有操作。


我覺得你這樣做並不是Mac的方式。在應用程序包中存儲數據的情況並不常見,通常情況下,這些數據會被傳送到~/Library/Application Support/。我認爲這兩個不同的應用程序非常相似,爲什麼不只是設置偏好?

個人而言,我覺得今天的.zip是分發你的應用程序的最佳方式。它會自動解壓縮,並在下載堆棧中顯示和您的應用程序圖標。 (當然,只有當你從互聯網上得到它。)

+0

不幸的是,創建的數據的位置是不可控的...否則我當然會讓自己的生活變得簡單 – 2010-02-06 15:11:12

0

欲瞭解更多請看sparkle framework。最新安裝只是從互聯網和te用戶複製應用程序包,然後只是要求做更新,不必離開你的應用程序去做任何事情

+1

閃閃發光是偉大的建議,但我的應用程序不是可可基於atm – 2010-02-08 10:06:33