Android Studio中找不到默认活动。

92

我刚刚升级到Android Studio 0.2.8,当我尝试编辑运行配置时,出现了一个错误提示:“找不到默认活动”。

启动Android Studio时,我收到了这个错误提示:“只允许从事件分派线程访问”。

我正在使用的活动是片段活动。

到目前为止,我已经尝试了重建和无效缓存/重新启动。但两者都没有用。

请告诉我如何解决这个问题。


可能是[错误:未找到默认活动]的重复问题(链接:https://dev59.com/K2Uo5IYBdhLWcg3wtRUx)。 - Sky Kelsey
29个回答

2
我刚在Android Studio 1.5.1中遇到了同样的错误,刚刚找到了问题的根源。我不确定原因是人为错误还是IDE行为中的奇怪故障,但是关于此主题的现有StackOverflow问题似乎没有显示任何内容,因此我想无论如何都将其发布为答案。
对我来说,我的团队成员或IDE本身已更改了启动器活动清单条目,导致它看起来像这样:
        <activity
            android:name="com.rhaebus.ui.activities.ActivitySplash"
            android:launchMode="singleInstance"
            android:screenOrientation="portrait">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <id android:name="android.intent.id.LAUNCHER" />
            </intent-filter>
        </activity>

虽然实际上它应该看起来像这样:

        <activity android:name="com.rhaebus.ui.activities.ActivitySplash"
            android:launchMode="singleInstance"
            android:screenOrientation="portrait">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" /> <!-- Change Here -->
            </intent-filter>
        </activity>

请务必仔细检查您在清单文件中的启动活动格式,最好三番五次地检查,这样您可能能够节省一些时间。

希望这可以帮助您。

编辑: 我强烈建议不要使用手动选择模块配置选项中的启动活动的答案,因为这会导致应用程序在三星Galaxy S5 Neo和三星Galaxy S6上不再显示在已安装应用程序列表中(至少对我而言)。


2

今天我也遇到了同样的问题,然后在这里查看答案。

对于我来说,不同之处在于昨天它还能正常工作,所以我认为这不可能是配置问题,无论是配置还是Android Studio版本都没有改变。

幸运的是,在尝试其他答案之前,我尝试了重启Android Studio,并且幸运地解决了问题。

因此,对于所有遇到此问题的人:首先尝试重新启动Android Studio,仅当这样做不能解决问题时才尝试这里的其他答案。


2

您可以通过进入“编辑配置”菜单(按“Shift”三次,输入“Edit Configurations”),然后将启动选项 > 启动更改为“无”,来使Android Studio不再抱怨。

我可能会添加一个包含说明的通用活动,以避免任何混淆。


1
请确保清单文件中包名与主活动相同。

1
  1. 在Android Studio中切换到Project视图(而非Android视图)。

  2. 确保你的项目遵循gradle插件的默认结构(即 project_dir/app/src/main/java...

  3. 删除所有看到的build文件夹和子文件夹。

  4. 在工具栏中点击Build -> Clean Project,然后点击Build -> Rebuild Project

  5. 尝试运行该项目。


1
在我的情况下,当我从项目中移除.idea文件夹(Project/.idea),然后重新打开Android Studio时,它可以正常工作。

删除.idea文件夹在我的情况下有所帮助,谢谢!为了澄清,所有扩展名为“.iml”的文件都在.idea文件夹中。请不要仅删除.iml文件,因为这可能会导致其他错误! - Cordis Audax Agrinova

0

对于像我这样苦苦寻找“源代码选项卡”的人:

enter image description here

在这里,您需要将您的“src”文件夹标记为蓝色(首先点击标记为:源,然后再点击您的src文件夹),然后就可以开始了。


0

你可以采取以下两个步骤:

  1. 进入配置并输入要启动的活动名称
  2. 如果仍然无法正常工作,请禁用即时运行

0

我已经尝试了所有的解决方案,但都没有起作用。

然后我尝试在我的Android Studio中禁用即时运行。

进入Android Studio设置首选项(MAC) ->构建、执行、部署->即时运行

取消勾选即时运行功能,然后从文件菜单中点击与Gradle文件同步项目

现在运行您的构建...


这已经不适用于Android Studio 4.0+。 - Jorge E. Hernández

0
在某些情况下,您可以拥有带有category字段的模型,如果您要在所有位置进行重构,那么它可能会在清单文件中进行重构,从而使标记xml变得无效。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接