Android编程容易犯的错误之二
11.不要太相信工具,比如Eclipse里面的断点遇到多线程什么,经常不起作用/走不到,还有就是如果语句为空的也不会走,这时候别太早下结论断点地方出错了,
所以每个工程都应该有日志的开关,通过查看日志来确认,某个路径是否走到或者某个变量的值,。。。
12.Java中的月份是从0开始的,所以格式化月份的时候,记得在原有的值上加1处理,如:
Calendar calendar = Calendar.getInstance(); if(!TextUtils.isEmpty(dateTimes)){ long milliseconds = WLDateUtils.parseDayTime(dateTimes); calendar.setTimeInMillis(milliseconds); } final int old_year = calendar.get(Calendar.YEAR); final int old_month = calendar.get(Calendar.MONTH); final int old_day = calendar.get(Calendar.DAY_OF_MONTH); mDatePickerDialog = new DatePickerDialog(this, new OnDateSetListener(){ @Override public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) { if(year != old_year || monthOfYear != old_month || dayOfMonth != old_day){ String dateTimes = String.format("%04d-%02d-%02d", year, monthOfYear + 1, dayOfMonth);//月份是从0开始的 } } }, old_year, old_month, old_day);
13.设置ListView的分割线,如果不是图片的话,应注意顺序:
mListView = new ListView(this); mListView.setCacheColorHint(0); mListView.setBackgroundDrawable(null); mListView.setDivider(getResources().getDrawable(R.drawable.list_divider)); mListView.setDividerHeight(2); 其中: <drawable name="list_divider">#00CCCC00</drawable>
即 setDividerHeight 函数应该在setDivider之后,否则这个分割线无效。
14.拼写错误
1)
<uses-permission android:name="android.permission.BLUETOOTH" />
而不是
<user-permission android:name="android.permission.BLUETOOTH" />
而且就算这样写错了,也能编译通过,只不过安装的时候不会显示该APP需要的权限,当然该APP什么权限都没有申请到。
15.当遇到如下的错误的时候(但是直接在PC的浏览器输入地址是没有问题的),第一个感觉是去验证下设备(比如手机是否能联网) ,而不是去找服务器端开发人员,质疑网络配置是不是有问题:
10-15 17:03:36.043: E/XXXApp(5660): Connection I/O Exception :java.net.UnknownHostException: Unable to resolve host "www.baidu.com": No address associated with hostname
公告
| |||||||||
日 | 一 | 二 | 三 | 四 | 五 | 六 | |||
---|---|---|---|---|---|---|---|---|---|
29 | 30 | 1 | 2 | 3 | 4 | 5 | |||
6 | 7 | 8 | 9 | 10 | 11 | 12 | |||
13 | 14 | 15 | 16 | 17 | 18 | 19 | |||
20 | 21 | 22 | 23 | 24 | 25 | 26 | |||
27 | 28 | 29 | 30 | 31 | 1 | 2 | |||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
搜索
随笔分类
最新评论
- 1. Re:Ubuntu下运行Shell脚本
- so good!
- 2. Re:利用Android的崩溃日志来定位问题
- @msg2030
多分析几次就会有经验了,大概能定位到哪个位置 - 3. Re:利用Android的崩溃日志来定位问题
- 谢谢。 还有没有更好的办法,通常几个方法都是用a表示,不知道是哪个
- 4. Re:taskdef class com.android.ant.NewSetupTask cannot be found
- @JanRoid
用JD-Gui查看anttasks.jar中确实没有com.android.ant.checkenvtask - 5. Re:taskdef class com.android.ant.NewSetupTask cannot be found
- 按照这样改动后,又出现新的错误:BUILD FAILEDF:\WorkSpace\Android20130221\build.xml:128: The following error occurred while executing this line:D:\android-sdk-windows\tools\ant\build.xml:72: Problem: failed to create ...