我把IntelliJ IDEA从12.0.4升级到12.10。

现在我的Android项目中的所有模块都给出了错误:

错误:没有找到默认活动

我恢复到12.0.4,一切都恢复正常了。

什么好主意吗?我认为这可能是一个丢失插件的问题。由于插件没有安装,它无法找到默认活动。另一个东西可能是本地配置,但我对此表示怀疑。我删除了配置文件夹来验证,这没有改变任何东西。


当前回答

我得到了这个错误。

并且发现在清单文件中,在启动器活动我没有放动作和 类别在意图过滤器。

错误的答案:

<activity
android:name=".VideoAdStarter"
android:label="@string/app_name">

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

</activity>

正确答案:

<activity
android:name=".VideoAdStarter"
android:label="@string/app_name">

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

</activity>

其他回答

我的问题是:

在我的应用程序模块清单,我必须替换另一个依赖模块清单标签。

我在应用程序标签下添加了下面的代码,它为我工作:

tools:replace="android:allowBackup, android:usesCleartextTraffic"

对你来说,这可能是由于一些其他性质。您还必须重写它们。

在我的情况下,菜单文件→无效缓存/重新启动…没有帮助。

我的项目一切正常,当然我的活动有以下意图过滤器:

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

真正帮助我的是删除Android/Gradle缓存文件夹(它们可以增长到10- 30gb)。

进入C:\Users\YOUR_USER_WINDOWS_NAME并删除以下文件夹

.android .AndroidStudio3.2 .gradle

(如果你想删除它,你可以在删除它之前保存一些Android配置。androidstudio3.2。)

如果您已经有<intent-filter>标记,请确保您正确地关闭了所有标记。

我的错误是我用</>而不是</activity>关闭了<activity>标签。

这仍然发生在Android Studio 4.0,所以我必须删除以下文件夹来解决这个问题:

C:\Users\ my_user_name.AndroidStudio4.0 \ system \缓存

由于这个问题是关于清单的大量问题的“着陆页”,导致没有发现Default Activity,这里还有另一件事要检查是否有此问题。

打开清单并切换到合并清单选项卡。

有时问题与将项目中的所有清单合并为一个有关,这可能导致错误,因此“未找到默认活动”。问题是,据我所知,除了这个合并清单选项卡,这个错误没有显示在任何地方。

例如:在项目minSdkVersion 10中,在build中降低实现的版本。Gradle文件:从25.4.0到25.3.1解决了这个问题。

dependencies {
    implementation 'com.android.support:appcompat-v7:25.3.1'
    implementation 'com.android.support:design:25.3.1'
    implementation 'com.android.support:mediarouter-v7:25.3.1'