启动活动时出现错误

20

我最近下载了Android Studio 2.0并创建了一个新的启动应用程序,但没有添加任何代码。运行应用程序后,Android Studio成功地在模拟器上安装了APK,但未启动该应用程序,而是出现了以下错误:

$ adb shell am start -n "com.example.muhammad.firstapp/com.example.muhammad.firstapp.MainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER

Unexpected error while executing: am start -n "com.example.muhammad.firstapp/com.example.muhammad.firstapp.MainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER

Error while Launching activity

我在谷歌上搜索了一下,发现这个问题之前已经有人问过,但是提供的解决方案对我也不起作用。而且我也没有在AndroidManifest.xml文件中添加任何内容。

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.example.muhammad.firstapp">
        <application
            android:allowBackup="true"
            android:icon="@mipmap/ic_launcher"
            android:label="@string/app_name"
            android:supportsRtl="true"
            android:theme="@style/AppTheme">
            <activity android:name=".MainActivity">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
        </application>
    </manifest>

MainActivity.java

package com.example.muhammad.firstapp;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
}

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.muhammad.firstapp.MainActivity">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello World!" />
</RelativeLayout>

可能是[Session 'app': Error Launching activity]的重复问题。(https://dev59.com/tloV5IYBdhLWcg3wN8nh) - Pavlus
1
我之前提到过这个问题已经被问过了,但是那些解决方案对我来说都不起作用。好吧,我通过自己苦苦挣扎数小时终于找到了解决方法,现在它对我有效了。 - metior
嗯,在那个问题中,问题的源头是 Android Studio 2.0Instant Run 功能中的一个漏洞。如果您发现了在不禁用 Instant Run 功能的情况下解决此问题的方法,请分享(通过回答您自己的问题)。 - Pavlus
我回答了自己的问题,如果有帮助,请点赞。 - metior
你有找到任何新的解决方案吗?我已经尝试了大部分2.1和2.2的答案,但都不行。难道我真的要降级到1.5吗?这似乎很难相信,但这种方法是无法使用的。 - Birei
显示剩余3条评论
20个回答

1

我刚刚安装了新版本2.10,问题似乎已经解决了。所以你可以尝试一下。


1
如果您在模拟器上运行应用程序,则可以轻松解决此问题。这是由于存储空间限制引起的。增加模拟器的存储空间应该可以解决此问题。Android P Emulator with less space on the disk 您可以从模拟器本身释放一些存储空间,也可以从AVD管理器中增加存储空间。

1
经过几个小时的努力,我得出结论,问题出在存储在 AVD 中的用户文件上。每当我选择 Wipe Data 的 AVD 时,该应用程序就可以完美运行,不会显示错误。但是对于开发人员来说,每次在运行应用程序之前都要清除数据非常麻烦,因为 Wipe Data 只有在模拟器未运行时才有效。
在另一个测试阶段中,我清除了 AVD 的数据,然后启动了应用程序,它成功运行;但是当我尝试第二次运行应用程序时,它再次显示了那个错误。
Error while Launching activity

然后我打开“管理应用程序”,并从模拟器中删除了我的应用程序。但这也没有起作用。
解决方法
- 删除Android Studio,但不要删除SDK。 - 从此处下载并安装Android Studio 1.5.1 http://tools.android.com/download/studio/stable 另一种解决方法(但对我无效)
- Session 'app': Error Launching activity 最终结论
我认为问题出在我们第二次尝试“运行”应用程序时的某个地方。它没有卸载先前版本的应用程序,因此当它发现包名称已经存在时,它不会安装应用程序; 导致启动活动时出错。

0

解决方案很简单,只需在连接到设备后使用adb命令卸载软件包即可。

adb uninstall PACKAGE NAME

将“PACKAGE NAME”替换为您要删除的应用程序名称,然后按“Enter”键。


0
在我的经验中,当您在构建或通过Android Studio安装时手动卸载您的apk时,会出现此错误。
在这种情况下,我只需创建一个apk并将其安装到AVD或手机上。之后它将像往常一样工作。
希望这能对某人有所帮助。

0

虽然我不确定这个问题的确切原因,但当我清理项目时,我找到了一个解决方案。 所以,请前往构建 -> 清理项目。这应该会帮助你。


0

我在LG-K220上遇到了这个问题。原来我之前已经卸载了这个应用程序,但是这款手机有一个系统应用程序,它不会立即卸载应用程序,而是像回收站一样保留它。难怪Android Studio安装新应用程序时出现了问题。我完全删除了该应用程序,然后它就可以正常工作了。


0

我曾经遇到过同样的问题,事实上我的应用程序的最新版本在手机或模拟器中被禁用了,为了解决这个问题,我只需要在我的手机上重新激活该应用程序(设置->应用程序->已禁用),然后重新编译,问题就得到了解决。


-1
也许你的手机或仿真器设置为拒绝通过USB安装apk请求。 打开你的手机设置并将其更改为允许安装即可解决该问题。 希望能对你有所帮助!

-1

我尝试了社区里几乎每一个解决方案,但是"Error Launching activity" 的问题从未消失。现在我找到了我的情况的原因。

我使用一台通过 USB 连接的 LG K20 Plus 手机来测试在 Android Studio 2.3.3 上构建的项目,如果我卸载了手机上的项目,就会出现"Error Launching activity",如果重新安装删除的项目,它就可以正常启动。

我希望这篇文章能够帮助在开发项目中遇到相同或类似错误的人们。


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