2012-01-19 70 views

回答

12

基本上它會擦除所有已編譯的組件,因此下一個版本將構建新鮮事物。理論上這絕不是必要的,因爲我們都知道IDE是完美的,完全掌握所有源代碼的變化,因此可以準確知道在任何特定時間哪些組件需要重新編譯/重建。 (但是,當然,這樣的完美似乎有點難以捉摸。)

「乾淨」的概念可以在大多數IDE中找到。當事情表現異常時,或者在需要「乾淨」重建的某些已知情況下使用它。

9

「乾淨」的一個非常重要的用法是當您的應用程序中有圖像並且更新其內容而不更改其名稱時。例如,假設您使用了一段名爲Background.png的圖像,然後您在Photoshop中編輯了此圖片並以相同的名稱保存了該圖片。在應用程序的下一次運行中,圖像不會被刷新;編譯器將繼續顯示舊的。爲確保看到更新的圖像,您需要在運行之前執行「清理」。所以原則上所有的圖像更新名稱沒有改變,你需要「清潔」。

順便說一句,您可能需要爲模擬器「清潔」一次,並且爲真實設備運行一次。最後一點,不要忘記,每次編寫代碼時,您認爲應該可以正常工作,但不能像預期的那樣工作,那麼解決方案就是「乾淨」的,在這種情況下,您的問題始終存在需要修改的代碼。

+0

我相信當Xcode 4+檢測到它們發生變化時,它會更新圖像。 – EmilioPelaez

+1

我正在使用Xcode 4.0 Build 4A304a,它不更新沒有「清潔」選項的圖像。 – antf

+0

當然,一個「完美」的IDE會注意到圖像的最後更改日期不同,或者有一些其他檢測更改的方案。有時候,即使在同一個IDE中,這些事情的可靠性也會因項目而異。 –