我把IntelliJ IDEA从12.0.4升级到12.10。

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

错误:没有找到默认活动

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

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


当前回答

我在我的代码中发现了这个:

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

如果你仔细看,它应该是<activity android:name="。MainActivity”>。

显然,我在某处重构了一个“活动”,它也改变了AndroidManifest中的名称。

其他回答

没有一个答案对我有用。错误信息说:

无法从../path/读取清单到/the/apk 没有发现默认活动

这个错误告诉我,Android Studio正在读取以前构建的APK文件。因此,我做了。/gradlew清洁来摆脱文件夹,这为我解决了问题。

退出Android Studio。

进入路径C:\Users\YOUR_WINDOW_USER_NAME.AndroidStudio3.3\system

删除“/ cached”文件夹和“/tmp”文件夹。

由于这个问题是关于清单的大量问题的“着陆页”,导致没有发现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'

这个解决方案100%有效

你一定看到了这个:

首先,打开舱单,检查是否有这个,

  <activity
      android:name="com.your.package.name.YourActivity"
      android:label="@string/app_name">
       <intent-filter>
           <action android:name="android.intent.action.MAIN" />
           <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
   </activity>

如果不存在,添加它

如果出现上述情况,但仍然看不到默认活动,请执行以下步骤:

点击编辑配置 在单击edit configuration时,您将看到启动选项被设置为DEFAULT ACTIVITY 把它变成什么都没有。

问题解决了!

Note

请在清单文件的根文件中写明你应该有包名

        <manifest xmlns:android="http://schemas.android.com/apk/res/android" 
        package="com.package.name">

我在升级到Android Studio 4.0后就遇到了这种情况。

我试图使缓存无效,删除并再次创建Android应用程序配置,选择一个特定的启动活动,但我总是得到错误说明,该活动没有在AndroidManifest.xml文件中定义,但当然它是。

对我来说有用的是进入运行/调试配置(在这里你定义了启动选项),删除对话框底部的“在启动前”中的“Gradle-aware Make”。我成功地运行了应用程序,然后我又添加了“Gradle-aware Make”,一切都正常工作。

我知道这说不通。但我就是这么做的。