android 你不知道的事(一)android 程序的突然死掉

 

  对于一个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。笨方法和日志的方法可以配合使用,笨方法有时候是很效的方法。不管方法如何,能解决问题就行了

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值