2010-11-20 55 views

回答

3

到目前爲止,這個問題的一些很好的答案。我想添加的一件事是,如果您的應用中存在重複的圖像(以支持不同設備上的不同屏幕尺寸),請考慮創建應用的不同版本,該版本僅針對特定屏幕大小使用圖像。如果您還針對不同的操作系統版本,這可能會使構建的總數增加很多 - 但如果您擔心應用程序的大小,那麼這是一個好方法。

+0

是的,馬克,我也應該強調這一點。 :) – 2010-11-20 20:20:07

2

您應該先嚐試優化圖像。運行圖像槽http://www.punypng.com/是一個很好的方法來做到這一點。看看一些圖像是否可以被更小的圖像取代,或者儘可能地使用相同的圖像。
根據型號的不同,Blackberry設備有32或64或128 MB RAM。您需要考慮是否所有這些5 Mb將在內存中同時使用,或者是否會使用更小或更大的數量。請記住,您可以在RAM中創建40 MB大小的應用程序,但不能運行其他應用程序。

+0

不幸的是,圖像非常微妙,因爲它們使用了很多漸變。 BB屏幕通常是16位色彩,並且任何形式的圖像重壓縮都會使它們顯得特別可怕。 – MusiGenesis 2010-11-20 03:14:25

+0

Torch 9800和Bold 9850等最新的設備擁有512MB的閃存,所以隨着時間的推移它的問題越來越小。但是仍然有很多空間有限的市場設備,特別是如果已經安裝了大量應用程序的話。 – 2010-11-20 20:06:59

+1

我認爲http://www.punypng.com/會進行無損壓縮,如果它是png,並且如果它是jpeg則會損失很少。如果您不喜歡結果,請嘗試使用,並不要使用圖片。 – Zalastax 2010-11-20 22:07:58

2

嗯,我不認爲5Mb是一個現代智能手機太多。無論如何,如果你的應用確實需要所有的圖像,那麼你只能擁有一個大的代碼文件沒有其他選擇。在某些互聯網速度較慢的情況下,這可能會導致OTA安裝過程緩慢。所以一些不耐煩的用戶可能會取消安裝。爲了克服安裝緩慢的問題,一些開發人員將資源中的核心代碼分開,因此在安裝OTA之後,第一次運行應用程序時可能會下載資源,可能是在彈出窗口或某種設置嚮導下。這當然會使啓動代碼更難實現。

我能想到的另一個問題是 - 圖像尺寸是否優化?無論您的圖像顏色深度如何,BB均以16位色彩通道方案(RGB 565)顯示顏色。所以值得通過一些565過濾器預處理所有的圖像(如果還沒有的話)。有很少的Photoshop插件。但是,不要指望減少巨大的尺寸。對於5 Mb的圖片集,您可能會獲得1 Mb的「折扣」(20%),所以無論如何,您仍然會擁有多個MB。

最後的注意事項 - 確保正確構建您的類,以便正確使用RAM。很可能你有一些壓縮圖像格式(JPG,PNG)的圖像資源。因此,在這種形式下,它們相對較小,但是當它們變成位圖時,位圖區域的每個像素至少需要2Bytes或至多4Bytes(取決於位圖類型)。確保你不會玩過多的靜態內容,因爲一旦它被載入,它就會活着(吃內存)直到非常程序結束,除非你手動取消它。

謝謝。

+0

這是一款黑莓手機,不是「現代智能手機」。 :) – MusiGenesis 2010-11-20 20:45:48

+0

新版本的操作系統是否具有32位ARGB位圖類型?我被困在4.6.1中 – MusiGenesis 2010-11-20 20:46:59

+0

剛剛看過4.6.1和6.0的Bitmap API - 它們在這部分沒有區別。 – 2010-11-21 10:02:26

相關問題