我把IntelliJ IDEA从12.0.4升级到12.10。

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

错误:没有找到默认活动

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

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


当前回答

我也遇到过同样的问题。由于某些原因,Android Studio将大部分XML文件中的所有Android:name属性(包括manifest)替换为Android:subject (Android Studio无法识别)。

正如你在上图中看到的,IDE不识别android:subject属性。因此,它将无法读取指定mainactivity的行。

解决方案是简单地改变每个android:受制于android:name,然后从Build菜单中重建项目*→重建项目。在重新构建项目时,您可能会遇到相同的问题,因此执行与上面相同的操作。

其他回答

这个解决方案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">

在我的案例中发生了这种情况,因为有一个明显的合并错误,我试图运行应用程序。

通过运行Build→Make Project查看具体的错误。

这个方法对我有用。点击应用程序图标,然后选择编辑配置。

在edit-configuration中,选择指定的活动而不是默认活动。 然后在下面给出活动的路径。

最后,与Gradle文件同步。

我也得到了这个错误,

错误:没有找到默认活动

嗯,在我的情况下,它是为磨损模块…我不需要一个活动,所以我只是做:

去编辑配置→磨损→启动选项→启动→无。 应用更改。单击OK。 从清单文件中删除默认活动的现有代码。

注意:不要忘记清理项目和同步Gradle文件。

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

只需在<application>标签的清单文件中添加这个。只需将MainActivity替换为默认activity, android.intent.action.youractivity就可以工作了。