android开发常见问题及解决

1.IllegalArgumentException: View not attached to window manager 窗体泄漏:解决方法,需要将UI控件定义在Activity中,当Activity被干掉时,要保证控件先被干掉。2010.06.24
2.从UI线程传递到其它线程的控件应该是初使化后的对象,因为UI线程会创建销毁控件,如果控件是其它线程创建会抛出View not attached to window manager异常。
3.svn工程删除后再导入可以用AplyPath来解决与服务器连接的问题。
4.xml文件不显示属性可以先将工程close再open解决。
5.工程有XX但是没有错误,可以将工程clear,或者将R文件删除,可以看下错误日志。
6.SQLiteDatabase 数据库更新与插入操作需要同步,且SQLiteOpenHelper应该是单列的,否则大量插入纪录时可能会因为抛出IllegalStateException: database not open而出现记录丢失的现象。
7.SQLiteDatabase 如果多次打开一个数据库,是否返回地址相同。
8.java.lang.IllegalArgumentException: Comparison method violates its general contract! 产生原因是对日期排序时将Long转型成Integer时出现逻辑问题(a>b>c && c>a),导致java.util.TimSort排序错误。
9.BroadcastReceiver 不能作为内部类注册到AndroidMenifest中。
10.Android HttpURLConnection 不能在getHttpHeader()后调用setRequestProperty(String,String)设置属性,会抛出java.lang.IllegalStateException: Cannot set method after connection is made
11.Android 模拟器不能全屏,在AndroidMenifest.xml中加入
12.Android 图片使用问题,如果是480X800,创建AVD时lcd density要设为240,这时使用的是res/xxx-hdpi目录下的图片
13.创建模拟器时可以指定一个heapsize,来解决内在不足的错误。
14.自定义view如果刷新时出现奇怪的边框线条,尝试刷新它的父布局。
15.Android 模拟器vm size 不足会导致应用crash。
16.Timer.delay(long) 的实现用的是绝对时间,1970以前的时间是负数,依赖于它会有问题。
17.android进程会被终结在资源不足的时候,如果不是service和activity持有进程。
18.service可以在onStartCommand里接受Intent做一些事情。
19.手机不能访问google service,更新一下root/etc/host中的ip地址(在电脑上Ping)。
20.InputStreamReader 和OutputStreamWriter 可以设置Stream的default encode,从而解决乱码问题。

你可能感兴趣的:(android)