在XCode中跟蹤編譯次數

這篇文章適合單獨做項目的羣衆們:)。有時候你希望跟蹤你的項目到底編輯、編譯、運行和測試了多少次。當你開發了一兩個程序的時候,如果有了這個跟蹤數據,你可能就會得出一個比較明顯的數據,到底對你來說做出不錯的軟件大概需要多久。

 

本文作者是Matthieu Cormier,原文地址是

http://sunflower.coleharbour.ca/cocoamondo/

 

如果你希望看到更多關於Cocoa的中文內容,歡迎你訪問Cocoachina網站。

 

概述

 

你的時間不是無限的,知道你做一件事情花了多少時間是很重要的。下面將要告訴你的是如何通過在項目中添加一個自動增長數目的運行腳本去跟蹤你的項目。腳本會生成一個.xcconfig文件,我們可以用它直接將你做這個項目編譯的次數顯示到“關於”對話框裏。

 

你項目中的一些數據

 

我最開始用這個技巧是通過 Laugh Man(cocoachina注:看過攻殼你就知道這個笑臉是哪來的了)來實現的,不過0.5版之前我並沒有開始使用這個方法

 

 

用過Laugh Man,我開始用SunFlower,這次我從項目的最開始就開始跟蹤編譯數據。以下是從0.1版到0.9版的跟蹤數據。

 


 

 

我發現這個數據是非常有用的。因爲我可以判斷出代碼行間的不同與在那個版本中修改了什麼的差別。一方面,我可以判斷出版本的提升付出了多大的代價,是否真的有用,同時還可以幫我大概估計出我的工作能力是否有提升。

 

 

你可能會注意到通過SunFlower生成的上面的數據,你會發現0.5和0.8版編譯的次數明顯多的多。這樣我就知道爲什麼這兩個版本爲什麼編譯了那麼多次。比如0.8版,我介紹了iTunes風格的那種滾動條,這樣就花費了我不少工作來完善它。

 

自動增加版本號的Shell腳本

 

我們需要的第一件事是自動增加我們編譯的次數。下面的腳本可以幫我們做這件事。它需要一個參數,是用來保存當前編譯次數的文件。這可以允許我們使用同一個腳本來管理多個項目。

        -e        > /dev/null
       $      number  < $  number++
    > $

 

 

我把這個腳本保存到了我主目錄的bin目錄,取名叫做buildIncrementer。你也可以把這個腳本保存到你電腦上,取一個你喜歡的名字。

 

將腳本添加到項目中

 

要在XCode中使用這個腳本,我們需要在項目中添加一個運行腳本階段(run script phase)。右鍵點擊你希望使用的項目,選擇Add -> New Build Phase ->New Run Script Build Phase

 

接下來選擇在新創建的Build Phase裏選擇Get Info,修改腳本,使其看起來像下面這樣:


 

 

現在在XCode裏運行程序,就會自動執行這個腳本。腳本會自動在你的項目目錄中創建.xcconfig版本文件。你可以在文本編輯器中查看這個version.xcconfig文件。內容大概是:“CURRENT_PROJECT_VERSION = 1”。

 

在關於對話框中添加編譯次數


我們得到了編譯的次數,如果能夠在關於對話框中加入這個數字那就很好了。我們需要做的第一件事情是在項目中添加version.xcconfig文件。

 

當你增加了自動生成的.xcconfig文件,你需要修改項目的編譯設置,這樣項目會基於那個文件編譯。在項目中選擇“Get Info”,然後選擇Build。將配置設置爲“All Configurations”,然後在Based On下拉框中選擇version。如圖所示。

 

 

最後,編輯info.plist文件,這樣,CFBundleVersion會使用${CURRENT_PROJECT_VERSION}這個數值並增加一個CFBundleShortVersionString。

 

CFBundleShortVersionString 0.1 CFBundleVersion ${CURRENT_PROJECT_VERSION}

 

 

另外,很重要的一件事需要提醒你注意的是你必須清理一次項目,最新的版本號就會顯示在關於對話框裏。這是由於只有在需要的情況下XCode纔會重新生成info.plist文件。

 

 

如果你不會設置,你可以從這裏下載包含了上文描述內容的例子項目。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章