对于一个android 初学者来说,出现 这个窗口,是极郁闷的一件事
对于任何语言来说,出现这个问题的最大可能,都是引用了空资源 ,这个空资源包括空的图片,包括空的窗体,空的指针或者引用。
一。出错原因
对android 来说,我目前总结两条可能出现这种错误的情况
1。添加了相应的类,而没有在AndroidManifest.xml中做相应的配置
比如 我在源码里添加一个派生自Activity的类,而在AndroidManifest.xml里没有写类似如下的配置
<activity android:name=".MainActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
则程序运行时就可能会崩溃
2。使用了空引用
Canvas cv = null;
holder.unlockCanvasAndPost(cv);// 将画布显示 出来
比如这两行代码,就会报错,原因是cv是空的,并没有实例化
二。解决android程序崩溃 的方法
1.笨方法
设置多个断点,看程序走到A断点之后,B断点之前崩溃,那就可以定位到出问题的区间了。
2.查看日志logcat
首先点击Debug,再点击小机器人的图标,日志就出来了。
红色的字体是错误 ,根据它,我们能定位到自己的错误 。
总结:
1。遇到对象引用 时,要做验正是否为空
2。笨方法和日志的方法可以配合使用,笨方法有时候是很效的方法。不管方法如何,能解决问题就行了