java - 具有 API 17 的一个应用程序的多个启动器

标签 java android intellij-idea

我有我的应用程序,我想要两个不同的启动器,每个启动器启动不同的 Activity 。它们应该全部 bundle 到一个 apk 中,而不是两个单独的应用程序。我知道这是可能的,例如在 Google Play 商店的 XKCD 浏览器中。我已经尝试在我需要在启动器中的第二个 Activity 中实现这个部分:

<intent-filter>
    <action android:name="android.intent.action.MAIN"/>
    <category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>

这导致声明为 MAIN 的第一个 Activity 在单击第二个启动器时启动。我也试过:

<intent-filter>
    <action android:name="android.intent.action.ACTIVITY_NAME"/>
    <category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>

还有:

<intent-filter>
    <action android:name=ACTIVITY_NAME"/>
    <category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>

这实现了相同的结果。我需要它才能运行到 API 17。想法?

最佳答案

你应该有一个主要 Activity :

<intent-filter>
    <action android:name="android.intent.action.MAIN"/>
    <category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>

以及仅包含 category 部分的任何其他 Activity :

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

关于java - 具有 API 17 的一个应用程序的多个启动器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28630601/

相关文章:

Java Swing 使用一种方法向框架添加面板,我将如何删除面板?

java - 您可以使用图片的 URL 将图像添加到 GUI 中吗?

java - Android MediaPlayereekTo()/getDuration() 未按预期工作

android - 从 Parse.com 获取更新

java - android项目中Intellij-Idea的渲染问题

JNI C++ 环境中的 Java 线程仅使用一个内核。 Arm 处理器和 Ubuntu

java - 使用 Spring Boot 的 Elasticsearch 无法正常工作

java - "Cannot resolve symbol ` Facebook Graph API 请求 `"错误

android-studio - Android Studio 不会在 Flutter Outline 模式下渲染

maven-2 - Maven RPM 插件在 intellij 中找不到 rpm 命令