Android清单/应用程序抽屉中的多个活动

时间:2016-07-04 04:52:37

标签: android android-activity

我有一个Android应用程序,我希望有2个活动可以从应用程序抽屉启动。我已经在AndroidManifest中声明了这两个活动,但似乎只有第一个活动正在启动,无论我点击哪个应用程序。第二个声明似乎被忽略了,因为如果我指定一个无效的名字,我甚至不会收到应用程序崩溃。

这是我的清单。

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >

    <activity
        android:name=".Activity1"
        android:label="@string/activity1" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name=".Activity2"
        android:label="@string/activity2">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

2 个答案:

答案 0 :(得分:0)

我想您需要通过将以下行添加到intent-filter来指定哪个活动是默认活动:

<category android:name="android.intent.category.DEFAULT"/>

尝试将其插入默认活动的清单标记中,并使另一个标记保持不变。

答案 1 :(得分:0)

用以下代码替换您的代码: -

   <activity
        android:name=".Activity1"
        android:label="@string/activity1" >
    </activity>
    <activity
        android:name=".Activity2"
        android:label="@string/activity2">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
  • 在这种情况下,您的 Activity2 将首先加载。第二件事是你不能为这两项活动提供发射器类别。只要您启动应用,它就会启动具有此<category android:name="android.intent.category.LAUNCHER" />
  • 的活动