Android:ActivityNotFoundException无法找到显式活动类

时间:2014-08-24 07:49:00

标签: java android android-activity activitynotfoundexception

尝试启动活动时出现了ActivityNotFoundException

java.lang.RuntimeException: Unable to start activity
    ComponentInfo{com.mypackagename/com.mypackagename.StartActivity}:
    android.content.ActivityNotFoundException: Unable to find explicit activity class
    {com.mypackagename/com.mypackagename.MainActivity}; 
    have you declared this activity in your AndroidManifest.xml?
    ....

我正在使用此代码启动新活动

Intent MainActivity = new Intent (this, MainActivity.class);
MainActivity.setFlags(Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT);
startActivity(MainActivity);
finish();

但是我收到了来自1位用户的Google开发者控制台关于ActivityNotFoundException(如上面的消息)的崩溃报告

我已在清单

中声明了这两项活动
....
<activity 
    android:name="com.mypackagename.StartActivity"
    android:label="@string/app_name"
    android:launchMode="singleTop"
    android:theme="@style/AppTheme"
    android:noHistory="true" >
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>
<activity
    android:name="com.mypackagename.MainActivity"
    android:label="@string/app_name"
    android:launchMode="singleTop"
    android:theme="@style/AppTheme"
    android:configChanges="orientation|keyboardHidden|screenSize" >
</activity>

我在使用模拟器测试几个Nexus设备和每个API版本时,一切正常。

StartActivity类扩展了Activity,MainActivity类扩展了ActionBarActivity

启动新活动或其他什么时,我的代码有问题吗?

我应该用它包围吗?

try {
    ...
} catch (Exception ...) {
    ...
}

1 个答案:

答案 0 :(得分:1)

尝试重命名Intent变量,因为您使用的名称与类名相同。

而是尝试

Intent intent = new Intent (this, MainActivity.class);;