程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> J2ME >> J2ME中應用程序的內存優化(2)

J2ME中應用程序的內存優化(2)

編輯:J2ME

二.圖片優化

J2ME的內存殺手無疑非圖片莫屬,一張3k的圖片可以占用20多k的內存不信大家把load前後的內存剩余打印出來對比看看。所以防止內存溢出最直接的辦法就是從圖片入手。

1.圖片壓縮:多數人馬上會想到這個辦法。不錯這個辦法是最有效的。在Photoshop裡圖片制作完成後不要選擇"存儲為",而是選擇"存儲為web所用格式"可以根據裡面的選項進行壓縮,特別是顏色這一項越小越好不過相應的圖像會有所失真。不要認為這樣就完了。

實際上該圖片還可以再次壓縮,在網上有許多類似的工具。推薦一款可以壓縮png格式的軟件xat.comImageOptimizer效果不錯。經常都有70%的壓縮率且圖像不會失真。

假如你有多張規格一樣的圖片,那麼建議你把它做成一張長條圖片。有兩個原因:

1、這樣節省存儲空間和內存空間。大家可做個試驗將10張圖片的內容放在一張當中對比看看文件大小有沒有變化。

2、10張圖片需要10個image對象需要進行10次io操作浪費時間不說還浪費內存。當筆者發現這個好處時興奮地把所有圖片都存成一張,吱地一聲內存又溢出了...原因想必大家也知道!!圖片太大了不要把不同界面的圖片整合在一起否則經常會得不償失。

作圖時還有一些細節需要注意,顏色數量,分辯率,圖像模式(最好是索引顏色),畫布大小都會影響到圖片大小。

三.工具優化

誰都知道混淆器是用來保護代碼的以加大反編譯的難度(個人認為這是在嘲笑程序員的智商)。實際上用它來優化程序也是不錯的選擇,至少有兩點好處:

1、壓縮程序大小。一個60k的程序經常可以壓掉10k左右。10k的空間對於寫低端手機的程序員簡直是雪中送碳,多少超過64k限制的游戲都受過它的恩惠;

2、節省內存空間。用腳去想也想得出來代碼少了內存裡的代碼段自然就短了。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved