您现在的位置: 万盛学电脑网 >> 程序编程 >> 网络编程 >> 安卓开发 >> 正文

Android技巧的心得总结

作者:佚名    责任编辑:admin    更新时间:2022-06-22

这是一篇介绍 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.(File.java:139)

原来是new File(path),path == null.为什么会这样呢?path是事先生成好了,加些打印可以看到去拍照前和拍照后此path的值发生了变化,解决方法可以按照我上面说的思路去解决。

3.Ctrl+Shift + O 自动去除警告,一段时间不用就忘记了!

以上就是 对Android技巧的心得总结的相关介绍,希望对大家有所帮助!