把每一件簡單的事做好,就不簡單了;把每一件平凡的事完成,就不平凡了!
這篇文章會慢慢更新的,自己剛接觸到安卓開發,注意事項以及效能優化都會更新,希望對讀者有一定的幫助。
1.在handler執行非同步資訊傳遞的時候,當我們在非ui執行緒中,需要把傳遞的資訊sendmessage給主線程,這個時候我們需要的message物件的獲取,最好是採用
message message = mhandler.obtainmessage();
message.what = mhandlerindex;
message.obj = result;
mhandler.sendmessage(message);
改掉原本的message message=new message();
obtainmessage()獲取message物件就能避免建立物件,從而減少記憶體的開銷了。
2.在開發動畫效果的過程中,盡量避免幀動畫的使用,容易造成oom(out of memory)記得在專案開發中,因為我新手,乙個訊號外放的動畫效果,我當時是使用的幀動畫,雖然效果看上去一樣,但效能差距挺大。老大的專案使用的scheduledexecutorservice,當時說的一句話挺好「動畫效果不就是定時任務嘛」........
mschedule = executors.newsinglethreadscheduledexecutor();
mschedule.scheduleatfixedrate(new advertingtask(), 500, 500,
timeunit.milliseconds);
這樣的實現效果可以放在乙個執行緒中去完成,主要是程式在結束的時候,相對於釋放資源以及任務結束方便。
public void finish()
super.finish();
}
3.json中optstring和getstring的區別
optjsonobject原始碼解析:
public jsonobject optjsonobject(string name)
//當返回值不是jsonobject物件時,返回值為null,不丟擲異常;
getjsonobject原始碼解析:
public jsonobject getjsonobject(string name) throws jsonexception else
} //當返回值不是jsonobject物件時,丟擲異常;
4.應用textutils簡化**量
textutils.isempty(phone)替代原本的phone == null || phone.trim().length() <= 0
textutils.equals(regpass, regpassagain)判斷兩者是否一致。
Ionic開發中注意事項 持續更新
1 angular services依賴注入的規範 自定義的service要寫在內建的angular services之後,自定義的service之間是沒有先後順序的 2 ionic1.3之後頁面為了提供效能加入了快取機制,如果不需要可以在配置頁面時將cache屬性設為false stateprov...
初學mongodb中注意事項和方法(持續更新)
1 查詢的時候find 出來的是乙個陣列物件 findone 出來的是查到的第乙個物件 2 關於query用法 精確匹配 query query new query criteria.where shijian is shijian 模糊查詢 query query new query criter...
app開發過程中有關耗電注意事項
一 保持螢幕常亮 原則 有喚起螢幕常亮的 必須有移除螢幕常亮的 原因 有保持螢幕常亮的 cpu一直在執行。1 增加flag getwindow addflags windowmanager.layoutparams.flag keep screen on 喚醒 getwindow clearflag...