我把IntelliJ IDEA从12.0.4升级到12.10。
现在我的Android项目中的所有模块都给出了错误:
错误:没有找到默认活动
我恢复到12.0.4,一切都恢复正常了。
什么好主意吗?我认为这可能是一个丢失插件的问题。由于插件没有安装,它无法找到默认活动。另一个东西可能是本地配置,但我对此表示怀疑。我删除了配置文件夹来验证,这没有改变任何东西。
我把IntelliJ IDEA从12.0.4升级到12.10。
现在我的Android项目中的所有模块都给出了错误:
错误:没有找到默认活动
我恢复到12.0.4,一切都恢复正常了。
什么好主意吗?我认为这可能是一个丢失插件的问题。由于插件没有安装,它无法找到默认活动。另一个东西可能是本地配置,但我对此表示怀疑。我删除了配置文件夹来验证,这没有改变任何东西。
当前回答
由于这个问题是关于清单的大量问题的“着陆页”,导致没有发现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'
其他回答
在Android Studio中运行/调试配置-> Android应用程序->通用->活动->选择“不启动活动”选项。
检查舱单上的所有行。
在我的例子中,我犯了这样的错误:
android:theme="@android:style/Theme.Wallpaper.NoTitleBar.Fullscreen"
LogCat里什么都没有。
我得到了这个错误。
并且发现在清单文件中,在启动器活动我没有放动作和 类别在意图过滤器。
错误的答案:
<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>
我尝试了无效缓存和重新启动选项,没有运气。然后我核实了舱单。它正确地设置了主要的活动意图。
我在菜单文件→设置→构建、执行、部署→Gradle的全局Gradle设置下检查了“离线工作”。
我取消了它,修改了构造。gradle文件(项目)使用不同的gradle版本(com.android.tools.build:gradle:3.3.1)并保存它。这触发了Gradle同步。
同步之后,这个错误就消失了。我又可以调试了。
正确的方法是将以下内容添加到Manifest文件中:
<activity
android:name="FULL_NAME_OF_YOUR_ACTIVITY"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
这应该插入到:
<application> </application>
不需要使缓存无效。