zoukankan      html  css  js  c++  java
  • Android之“Unfortunately,xxx has stopped!”

    初学Android遇到Unfortunately,xxx has stopped!真是一件让人头疼的事情,下面就遇到的两种可能情况给出解决方案。通常遇到的情况在于由一个Activity跳转至另一个Activity时发生。

    错误截图如下:

    当遇到这种情况后请先查看你的logcat日志。然后看一看是否属于下面的情况。

    --------------------------------------------------------------------------------

    第一种:

    其中一种错误日志包含有类似如下的语句:

    android.content.ActivityNotFoundException: 

    Unable to find explicit activity class {test.xxx/test.xxx.xxx}; have you declared this activity in your AndroidManifest.xml?

    意思就是:

    找不到Activity异常。

    不能找到xxx类Activity,并且询问你你是否已经声明了你的Activity在AndroidManifest.xml文件中。这种情况下很有可能是你的某一个要跳转的Activity没有在Activity在AndroidManifest.xml中进行声明。声明格式如下:

    1. <application>  
    2.   
    3. <activity  
    4.   
    5. android:name="test.activity.ResultActivity"  
    6.   
    7. android:label="@string/nickname"/>  
    8.   
    9. </application>  

        其中test.activity.ResultActivity是你的Activity名称,这里你最好使用eclipse的提示功能然后选择对应的Activity名称。当然你也可以缩写为.ResultActivity这时要注意,那个点不能少。除此之外Activity的声明要放在<application></application>中。

    --------------------------------------------------------------------------------

        第二种:

        同样的查看Logcat,如果日志中包括类似下面的提示:

        java.lang.RuntimeException: 

        Unable to start activity  ComponentInfo{xxx}: java.lang.NumberFormatException:  Invalid int:"factorFirStr"

        意思就是:运行时异常。

        不能够读取组件信息,大括号内是出现异常的组件。具体错误是数据格式异常,最后给出了无效的整型变量"factorFirStr"(当然这个变量在这里只是个例子)。

        那么解决的方法就是处理好这个变量。所以找bug是就从这个变量或者与这个变量相关的地方找。错误基本上可以肯定出现在这儿。看看是不是哪里的语法什么错了,还是单词拼写错误,或是不该加引号的加了引号等等,这些大多是由于不信心造成。

        这里有时候还会提示......Invalid int: "null",这说明你的Activity在传递数据的过程中某个或几个数据值为空类型,也就是值没有传递成功,这是你可以考虑一下是不是Intent在传递过程中哪里出现了不对。

    --------------------------------------------------------------------------------

    第三种:

    logcat显示:

    java.lang.RuntimeException:

    Unable to instantiate activity ComponentInfo{test.androidstudy05/test.androidstudy05.ThirdActivity}: java.lang.ClassCastException: test.androidstudy05.ThirdActivity cannot be cast to android.app.Activity
    提示为提供activity组件信息,不能够启动到android.app.Activity

    问题可能是你要跳转的类未继承Activity,你可以尝试检查一下你的类是否继承了Activity。在你继承了类Activity之后你必须引入包android.app.Activity,而这里提示不能够投射到android.app.Activity,也就是说你可能未继承Activity。


    作者:KillerLegend
    出处:http://www.cnblogs.com/KillerLegend/
    分享最新的资源,分享个人所得,欢迎关注我的新浪微博
    新浪微博主页:ikey4u
    我的个人博客:www.ikey4u.com
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

     
  • 相关阅读:
    WPF基础篇之静态资源和动态资源
    15-Node-数据库
    15-Node
    12-Git
    总-S04-03 项目-大事件
    00-PHP难点
    08-PHP基础
    15-ES6
    16-Vue-webpack
    00-Web难点
  • 原文地址:https://www.cnblogs.com/killerlegend/p/3237522.html
Copyright © 2011-2022 走看看