2011-02-25 79 views
1

好吧,所以蘋果顯然有這個事情,如果應用程序加載時間過長,iOS會自動退出應用程序或其他東西。所以當我構建我的iPhone應用程序時,我有很多高分辨率圖像,需要一段時間才能加載,並且在應用程序自動死亡之前它們永遠不會完成。有人能幫忙嗎?iPhone應用程序在它結束之前被殺死加載

謝謝!

+1

從用戶的角度來看待它。在推送應用圖標和重新控制手機之間,你願意盯着黑屏多久? – Crashworks 2011-02-25 04:10:31

回答

9

從iPhone應用程序編程指南:「初始化時間不是開始加載您不打算立即使用的大數據結構的時間...如果您的應用程序需要額外的時間來啓動從網絡加載數據或者執行其他可能很慢的任務,則應先啓動並運行界面,然後在後臺線程上啓動緩慢的任務。「

+0

+1對於Alex對於正確的答案...... – Sabby 2011-02-25 04:24:53

1

正如Alex所說,我建議你在後臺線程上加載資源。但是,請注意在後臺線程上使用UIKit。大多數情況下,UIKit類只能從應用程序的主線程中使用。你應該使用線程安全的API。

例如,UIImage + imageWithContentsOfFile:是線程安全的。 UIImage + imageNamed:不是線程安全的。

(從Developer Forums thread

1

這需要一段時間來加載...

不只是應用程序啓動...如果你想有一個敏感的應用程序,該應用程序不應該做任何在主UI線程或運行循環中需要超過幾十毫秒的同步。