繁体   English   中英

Android应用程序不会随着Eclipse崩溃

[英]Android app won't crash with Eclipse

是的,是的。 尽管引入了一些错误的代码,该应用仍继续运行。 我真的是Android和Eclipse开发的新手,所以我想知道是否有某些设置导致应用程序不崩溃? 我尝试导致崩溃的原因是为了测试一些崩溃报告代码。

这是我创建异常的方法。 在我的一个按钮事件处理程序中,我添加了以下行:

int i = 1 / 0; // Divide by zero is bad!

这是遇到上一行之后的LogCat输出:

04-25 15:50:39.880: W/System.err(2786): java.lang.reflect.InvocationTargetException
04-25 15:50:39.880: W/System.err(2786):     at java.lang.reflect.Method.invokeNative(Native Method)
04-25 15:50:39.880: W/System.err(2786):     at java.lang.reflect.Method.invoke(Method.java:507)
04-25 15:50:39.880: W/System.err(2786):     at com.mystuff.android.ReflectiveAction.run(Unknown Source)
04-25 15:50:39.880: W/System.err(2786):     at com.mystuff.android.Command.onClick(Unknown Source)
04-25 15:50:39.890: W/System.err(2786):     at android.view.View.performClick(View.java:2532)
04-25 15:50:39.890: W/System.err(2786):     at android.view.View$PerformClick.run(View.java:9293)
04-25 15:50:39.890: W/System.err(2786):     at android.os.Handler.handleCallback(Handler.java:587)
04-25 15:50:39.890: W/System.err(2786):     at android.os.Handler.dispatchMessage(Handler.java:92)
04-25 15:50:39.890: W/System.err(2786):     at android.os.Looper.loop(Looper.java:143)
04-25 15:50:39.890: W/System.err(2786):     at android.app.ActivityThread.main(ActivityThread.java:4263)
04-25 15:50:39.890: W/System.err(2786):     at java.lang.reflect.Method.invokeNative(Native Method)
04-25 15:50:39.890: W/System.err(2786):     at java.lang.reflect.Method.invoke(Method.java:507)
04-25 15:50:39.890: W/System.err(2786):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
04-25 15:50:39.890: W/System.err(2786):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
04-25 15:50:39.890: W/System.err(2786):     at dalvik.system.NativeStart.main(Native Method)
04-25 15:50:39.890: W/System.err(2786): Caused by: java.lang.ArithmeticException: divide by zero
04-25 15:50:39.890: W/System.err(2786):     at com.mystuff.theapp.HomePage.evSurprise(HomePage.java:209)
04-25 15:50:39.890: W/System.err(2786):     ... 15 more

感谢您提供的所有帮助!

编辑-这是带有错误代码行的整个事件处理程序:

public void evSurprise () {
    int i = 1 / 0;

    cpanel.animateGoButtonWhole();
    cpanel.showThrobber();

    Helper.startActivity( this, Actions.VENUE, Actions.SEARCH, false );
}

顺便说一句,此代码是由我们公司的外部承包商编写的。 我是一位目标C程序员,他试图了解Java和Android开发。 由于对代码的了解有限,我可能没有意识到一个异常处理程序。 如果是这种情况,我应该找什么?

您可能会发现错误。

如果您执行1/0而没有发现错误,则日志看起来像

E/AndroidRuntime(27801)

E-错误。 但是我们是

W/System.err(2786)

W-警告。 您正在捕获错误并进行打印。

因此,请删除代码中的try / catch,如下所示:

try{
    //your code
}catch(Exception e){
    e.printStackTrace(e)
}

仅使用//您的代码部分

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM