2010-05-28 72 views
0

我正在做我的iPhone應用程序的性能測試,我注意到有時在啓動前3-4秒的時間過去了,我開始從applicationDidFinishLaunching看到我的NSLogs。我已經優化了代碼進入applicationDidFinishLaunching後會發生什麼,但我不知道如何優化之前發生的事情。我使用的是Default.png啓動畫面,因此它在進入applicationDidFinishLaunching並開始執行操作之前,基本上只是在該屏幕上停頓。在調用applicationDidFinishLaunching之前會發生什麼?

只是給你們一些背景,我沒有nib文件,我使用的核心動畫,如果這有什麼區別。我有大約10個不同的控制器,並且我的總捆綁大小僅略低於2MB。

回答

0

我稍微做了一些實驗,發現大多數應用的默認啓動時間是3秒或更長。

我很懊惱語音備忘錄應用程序需要10秒鐘才能啓動,這段時間我已經忘記了我要說的話。我試圖編寫一個能夠更快啓動並使用default.png並自動開始錄製的錄音機,我有一臺錄音機在1-1.5秒內不斷啓動。爲了獲得啓動時間,我必須在界面變爲活動狀態之前啓動記錄器。

但是,在這項研究中,我發現大多數應用程序,例如一個直接從Xcode模板編譯而不需要修改的應用程序,在3-5秒內啓動。

基於這個事實,我會說你真的沒有問題。啓動時間落在預期的範圍內。 deanWombourne's observation about the debugger很可能是正確的,它可能會在您的啓動時間中增加一兩秒鐘。

+0

謝謝。我想你們都是對的。這主要來自調試器連接的滯後時間。它在2-3秒內加載,我想現在必須足夠好。 – Nefsu 2010-05-28 21:00:02

1

嘗試不附加調試器中運行它 - 它的確在啓動時等待連接到Mac的一件事;)

如果你只是在該設備上運行它沒有你的MAC連接,你仍然可以看到延遲?

相關問題