我想在我的应用中有两个主要 Activity 。所以在我的 list 中我放了:
<activity
android:name="mypackage1.MainActivity"
android:label="@string/title_activity_main">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="mypackage2.MainActivity2"
android:label="@string/title_activity_main2">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
在我的应用程序菜单中创建了两个图标。但是当我点击它们中的每一个时,第一个 Activity MainActivity 总是会启动。有可能有两个主要 Activity 吗?如果是这样,我所做的有什么问题? 谢谢
最佳答案
LAUNCHER
Intent 过滤器决定了应用程序抽屉/启动器中显示的内容。这就是显示两个图标的原因。
但是,您还设置了 DEFAULT
Intent 过滤器,它为整个包设置了默认的 Activity
。由于您设置了两次,因此您会遇到第一个/最新注册的优先级问题。当您删除 DEFAULT
过滤器时,您将能够启动您在启动器中单击的任何内容。
简而言之,从两个 Activity 中删除以下行:
<category android:name="android.intent.category.DEFAULT" />
关于android - AndroidManifest.xml 中的两个主要 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15526805/