我把IntelliJ IDEA从12.0.4升级到12.10。
现在我的Android项目中的所有模块都给出了错误:
错误:没有找到默认活动
我恢复到12.0.4,一切都恢复正常了。
什么好主意吗?我认为这可能是一个丢失插件的问题。由于插件没有安装,它无法找到默认活动。另一个东西可能是本地配置,但我对此表示怀疑。我删除了配置文件夹来验证,这没有改变任何东西。
我把IntelliJ IDEA从12.0.4升级到12.10。
现在我的Android项目中的所有模块都给出了错误:
错误:没有找到默认活动
我恢复到12.0.4,一切都恢复正常了。
什么好主意吗?我认为这可能是一个丢失插件的问题。由于插件没有安装,它无法找到默认活动。另一个东西可能是本地配置,但我对此表示怀疑。我删除了配置文件夹来验证,这没有改变任何东西。
当前回答
好吧,我有时不理解Android Studio……
我遇到了同样的问题,并尝试了这里的答案,但无济于事。
然后我改变了一件事:我的intent-filter中的动作名称全部用大写。我把它改为小,只留下大写的单词MAIN,它解决了这个问题!多么荒谬!
其他回答
在我的情况下,菜单文件→无效缓存/重新启动…没有帮助。
我的项目一切正常,当然我的活动有以下意图过滤器:
<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。)
这个解决方案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">
这是在我的电脑意外重启后发生的。奇怪的是,我没有做任何修改,仍然得到这个错误。
以上这些对我都没有帮助。解决我问题的,是这个。
步骤1:
步骤2:
步骤3:
如果这不能解决问题,再试试别的办法。
试1:
菜单文件→无效缓存/重启…
试2:
检查以下两行,
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
在文件manifest.xml中的启动器活动声明中。
<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>
试3:
如图所示: 打开“运行/调试配置”。
如果这也无济于事:
尝试4:
菜单文件→导出到ZIP。
and
将其作为一个新项目导入。
<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就可以工作了。
对我来说,这个问题的发生是因为其他原因。所以即使它有超过30个答案,我仍然觉得我的解决方案可能会帮助到一些人。
我的styles.xml看起来是这样的:
<style name="AppTheme" parent="...">
....
</style>
<style name="AppTheme.NoActionBar" parent="...">
....
</style>
我的androidmanifest。xml是这样的:
<application
android:label="@string/app_name"
android:theme="@style/AppTheme">
....
</application>
出于某种原因,我决定让我的主题没有ActionBar,所以我继续下去,从我的styles.xml中删除了它。这是更新后的版本:
<style name="AppTheme.NoActionBar" parent="...">
....
</style>
除此之外,我还必须更新清单文件中的主题,但我忘记了这一点。所以当我运行应用程序,我得到的错误说:
错误:没有找到默认活动
经过长时间的挣扎,我发现了问题,并相应地修改了我的载货单:
<application
android:label="@string/app_name"
android:theme="@style/AppTheme.NoActionBar">
....
</application>
结论:
如果你有一个错误的AndroidManifest.xml可能导致清单合并失败,那么AS会给出这个错误。