• android异常Unable to instantiate activity ComponentInfo解决方法


    我是下面提到的第四条:

    在Order and Export 中 把新加的 android-support-v4.jar的前面的对号打上勾 保存;就可以了;

    做android开发的可能都碰到"java.lang.RuntimeException: Unable to instantiate activity ComponentInfo"过这个异常,出现这个异常的原因有很多,就根据我个人而言给出以下几种解决办法,以后再碰到了再更新:

    1.最常见的原因是新建了一个activity,完成代码编写之后忘记了在Manifest.xml中配置注册该activity就会出现上面的异常。还有就是修改了activity的类名或者包名而没有在Manifest.xml文件中做相应的修改。

    2.在注册activity时,省略报名直接用“.XxxActivity”来代替activity的全路径。比如下面的代码中默认的包名是"com.location.activity"(程序第3行),在注册activity的时候,若果activity确实是在该包下,则可以使用".XxxActivity"来代替(注意activity类名前的点是不可以省略的!),当然也可以使用全路径如下面代码第11行所示。但如果所新建的activity不在默认的包下,此时省略包名直接用".XxxActivity"来代替就会出现“java.lang.RuntimeException: Unable to instantiate activity ComponentInfo...”异常,这时必须用全路径来表示,格式如下面代码第11行所示,即包名+activity的名,如“xxx.xxx.xxx.XxxActivity”。

    [html] view plain copy
     
    1. <?xml version="1.0" encoding="utf-8"?>  
    2. <manifest xmlns:android="http://schemas.android.com/apk/res/android"  
    3.     package="com.location.activity"  
    4.     android:versionCode="1"  
    5.     android:versionName="1.0" >  
    6.   
    7.     <application  
    8.         android:icon="@drawable/ic_launcher"  
    9.         android:label="@string/app_name" >  
    10.         <activity  
    11.             android:name="com.location.activity.LocationActivity"  
    12.             android:label="@string/app_name" >  
    13.             <intent-filter>  
    14.                 <action android:name="android.intent.action.MAIN" />  
    15.   
    16.                 <category android:name="android.intent.category.LAUNCHER" />  
    17.             </intent-filter>  
    18.         </activity>  
    19.         ......  

    3.如果你更新了ADT的新版本,而工程文件中使用了其他的jar包,也可能会出现"java.lang.RuntimeException: Unable to instantiate activity ComponentInfo"这样的异常,处理办法:Project -> Properties ->java build path-> Order & Export 选上Private 然后clean 项目。

    4.还有一种可能是你加入了新的jar包,但在编译时没有勾选上,处理办法是和3的处理办法一样,若还有报错有可能是加入的jar包需要先编译。处理方法:右键工程文件-->Build Path-->Configure Build Path-->Order and Export   然后选中填入的jar包Up或者Down调整一下编译顺序。

  • 相关阅读:
    求循环小数
    Android中Intent的用法总结
    Java中@Override的作用
    三种继承方式和访问控制方式对子类成员的影响
    设计一个用于人事管理的People(人员)类
    QSort函数对不同类型数据快速排序浅谈
    QSQLITE 使用
    c++控制内存分配
    dll加载过程全局变量会先初始化
    二维数组
  • 原文地址:https://www.cnblogs.com/aspirant/p/7637868.html
Copyright © 2020-2023  润新知