這是一篇介紹 Android技巧的心得總結的文章,下面就讓我們一起來了解一下吧!
1.最好只在Activity中控制Bitmap的對象,雖然有BitmapFactory.decodeFile(String path)方法,最好不要在activity之外使用,因為你不知道什麼時候這個非activity對象結束,Bitmap不用了必須要recyle,而在Activity中的好處是在onDestory()方法中直接回收即可,且不用擔心其他地方還在使用,這裡卻已經回收了這類問題的發生。
2.涉及到拍照或者取相片等調用外部程序的時候,最好在當前Activity中做好防護,涉及兩個函數 protected void onSaveInstanceState(Bundle outState) 和protected void onRestoreInstanceState(Bundle savedInstanceState) ,前者保存,後者提取,重寫它們。為什麼要這樣做呢?因為有的android機器上調用拍照等外部程序後回到本Activity後會先執行到ondestory(),然後重新執行onCreate()流程,這有時候是一個很蛋疼的問題,重新來了一遍,所改變的數據可以都會被重新初始化了。
連帶著說一個另外的問題,可能有人會遇到,程序中有拍照程序的時候有可能會遇到這個問題:
06-07 22:53:59.650: ERROR/AndroidRuntime(3935): Caused by: java.lang.NullPointerException
06-07 22:53:59.650: ERROR/AndroidRuntime(3935): at java.io.File.fixSlashes(File.java:205)
06-07 22:53:59.650: ERROR/AndroidRuntime(3935): at java.io.File.init(File.java:189)
06-07 22:53:59.650: ERROR/AndroidRuntime(3935): at java.io.File.
原來是new File(path),path == null.為什麼會這樣呢?path是事先生成好了,加些打印可以看到去拍照前和拍照後此path的值發生了變化,解決方法可以按照我上面說的思路去解決。
3.Ctrl+Shift + O 自動去除警告,一段時間不用就忘記了!
以上就是 對Android技巧的心得總結的相關介紹,希望對大家有所幫助!