最近开始学习安卓了,希望自己的兴趣,可以在安卓这片开放的热土上开出绚丽的花。
安卓属于嵌入式系统,开发过程中出现错误,总是以“xxx程序已停止运行”,这样简单粗暴的方式让我手足无措,每次都接近崩溃。
刚开始写程序,运行代码是总是崩溃,后来经过逐行查看才发现onCreate()写成了onCrate(),这种错误是很难被发现的。
今天,在写intent时又写成了initent,又快让我崩溃了。这时候Debug的重要性才体现了出来,就用logcat的方法查看了出错日志,虽然不怎么清楚这个日志的意思(英语有些差了):
03-25 22:48:16.035: E/AndroidRuntime(9911): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.myapp.intent/com.myapp.itent.FirstAcitivity}: java.lang.ClassNotFoundException: Didn't find class "com.myapp.itent.FirstAcitivity" on path: DexPathList[[zip file "/data/app/com.myapp.intent-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.myapp.intent-1, /vendor/lib, /system/lib]]
应该是不能实例化activity 不能发现class文件com.myapp.itent.FirstAcitivity;这下显而易见,我在Mainfest文件中把:
<activity
android:name="com.myapp.itent.FirstActivity"这句写写错了,intent与itent傻傻分不清楚。
像这种小错误,却可以搞的人焦头烂额,实在不容忽视。
这种错误到底是英语太差呢,还是粗心大意,或许是对代码的熟悉度不够。但是不管怎样,学会Debug是必须的。
最后来个copy的段子:
- 第一重:无尽bug常作客,困闷调试伴不眠。第二重:千行
- 代码过,bug不沾身。第三重:编码间,bug灰飞烟灭。