我把IntelliJ IDEA从12.0.4升级到12.10。
现在我的Android项目中的所有模块都给出了错误:
错误:没有找到默认活动
我恢复到12.0.4,一切都恢复正常了。
什么好主意吗?我认为这可能是一个丢失插件的问题。由于插件没有安装,它无法找到默认活动。另一个东西可能是本地配置,但我对此表示怀疑。我删除了配置文件夹来验证,这没有改变任何东西。
我把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”,一切都正常工作。
我知道这说不通。但我就是这么做的。