我把IntelliJ IDEA从12.0.4升级到12.10。

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

错误:没有找到默认活动

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

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


当前回答

如果你的应用有一个默认的启动活动,这可能是你的错误:

步骤1:选择“编辑配置”

步骤2:注意这个警告:未找到默认活动

第三步:选择一个默认活动

步骤3:保存更改并完成

祝你好运

其他回答

TL; diana:

确保您不仅检查操作和类别名称,还检查路径。特别是如果你做了重构。

我的解决方案是仔细检查AndroidManifest文件。我做了一个重构,它不仅更新了意图过滤器,而且还更新了意图过滤器名称的路径:

<!-- Type and value were added to the 
     path here when I did the refactor -->
<action android:name="android.intent.type.MAIN"/>
<category android:name="android.intent.value.LAUNCHER"/>

它应该是:

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

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

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

最后,与Gradle文件同步。

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

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

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

自从Android Studio 3.5或3.6以来,我开始找不到默认活动,我厌倦了无效缓存和重新启动,重建项目等。

事实证明,我处理多模块和清单的方式是错误的。我有默认的活动的清单在库模块,但它应该已经在两个应用程序模块。

假设库模块 appmodule1 appmodule2

Remove HomeActivity from librarymodule Manifest whatsoever. Add: class AppModuleActivity1 : HomeActivity() to appmodule1 class AppModuleActivity2 : HomeActivity() to appmodule2 To appmodule1 Manifest inside application tag, I added: <activity android:name="com.app.name.AppModuleActivity1"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> Same about appmodule2 but change 2 for 1 in naming.

我也面临着同样的问题。在我的例子中,我不止一次地声明了一个活动。删除重复的活动后,错误得到解决。