0

尝试启动活动时出现 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();

但是我从 Google 开发者控制台收到了来自 1 个用户的 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 ...) {
    ...
}
4

1 回答 1

1

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

而是尝试

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

于 2014-08-24T07:55:40.213 回答