1樓:匿名使用者
如果不需要呼叫父類成員變數的子類應用static修飾,因為不用static修飾的會保留父類的物件引用,有時gc就不能很好地工作了。
對於方法,繼承後可使用convertview,viewholder優化。
對於sqlite的資料庫不用時最好關閉掉鏈結。
及時**bitmap。
hashmap hashmap = new hashmap ()而不是map宣告,因為基本上不會更換map型別的。
2樓:mdj東哥
我的做法是時間換空間,盡量檔案化一些占用記憶體的資料。最典型的就是listview中的bitmap,可以參考這個開源元件的實現。 其將bitmap都本地檔案快取,記憶體中只保留最近使用的4張**,在使用中發現還是會偶爾出現oom,然後我就將其改為完全的讀取檔案,記憶體中不保留**,使用以後都自動**,由此擴充套件的資料檔案也同樣快取成檔案。
除了bitmap,其他的地方沒想到什麼能占用這麼大記憶體,網路**下來的資料檔案?需要都留在記憶體中嗎?目前我做的應用,每次請求的資料大小都比較小,每次http請求下來的資料都把url轉換成檔名,然後快取成檔案,在下次http請求的時候先根據url來預讀檔案,暫時不用的資料就釋放掉。
經常會oom我覺得就是在bitmap處理的時候,比如decodefile,在往介面上載入**時,不用直接載入原圖,可以進行縮放。一張1000*1000的**要載入到乙個100*100的imageview上,直接載入進來大多數都會oom,可以先用injustdecodebounds
options = new ;
= true;
拿到這個**的大小,再算好縮放比例。
int scale = 0;
scale = int)( float)size);
if (scale <=0)
= scale;
= false;
再進行decode。
總之就是盡量時間換空間,實際這個時間是非常非常短的,使用者體驗內的。
開發android應用需要哪些,開發android應用需要哪些api
api 級別是乙個整數值,它唯一標識了某版本 android 平台所提供的 api 的版本。android 平台提供了一整套 api,應用程式可以用這些 api 與底層系統進行互動。這套api由以下部分組成 核心包和類 manifest 檔案中使用的 xml 格式的元素和屬性宣告 宣告和訪問資源時所...
西塘什麼時候開始開發的,居民在開發中有什麼困擾
西塘旅遊開發已經幾十年了,好像在1994年左右,居民在開發中一般沒有什麼困擾,只有給當地老百姓帶來了無限的生機。旅遊開發了,千年的古鎮更加充滿了活力 我剛剛從西塘回來,真的是很後悔去那。西塘是個很小的地方,完全是農村,景區基本就是圍繞著一條內河 河水渾濁不堪 兩邊的商家和旅店都是民居改建的,和平常在...
案山在風水中有哪些影響,臥室在風水中有哪些作用
青龍宜緊不宜迫,案山要近明堂臥。風水寶地的構成,不僅要求四像畢備 玄武垂首,朱雀欣舞,青龍環繞,白虎馴伏。還要求北面主龍脈要綿延不絕,南方朝案山遠近呼應,左右兩側護山拱衛,中間的明堂地勢寬敞,且有流水瀑布環抱,玄武方向的山峰垂首不語,朱雀方向的山脈欣喜歌舞,左之青龍山勢要起伏,右之白虎山形要柔順,這...