安装APK时出现“Session 'app'”错误

55

我在将使用 Android Studio 1.1 编写的项目导入 Android Studio 2.1.2 时遇到了困难。每当 gradle 在测试平板应用程序之前建立时,都会出现以下错误。下面是错误截图。有人知道问题可能是什么吗?

我已经尝试过 adb kill-server 然后是 adb start-server,以及一些与项目兼容的其他 gradle 版本。除此之外,我没有能够找到更多的解决方案针对这个问题 ("session 'app': error installing APK")。

另外,我尝试上传一个基本的 Hello World 项目,成功建立了 gradle。

Grable Build 的错误消息

Initial Error Message

Second set of Errors


6
你尝试过清理项目然后重新构建吗? - Henry
是的,我确实尝试过再次清理项目。 - Randall Reynolds
请务必查看我的答案,网址为https://dev59.com/n1oU5IYBdhLWcg3w35kM#42831107。 - vanomart
我曾经遇到过同样的问题,清理并重建项目对我很有帮助。 - WIT_NGU
我通过运行 "gradlew.bat clean" 并重新启动 Android Studio 来解决了这个错误。 - Fthr
36个回答

102
我曾遇到类似的问题,附上了错误图片,错误以红色突出显示。 在Android Studio 2.3和3.1.4中关闭即时运行功能可以消除错误。

运行后出现的错误 关闭即时运行


4
嗨,它解决了我的问题。但我不知道为什么,之前一直没问题突然就出了问题。但禁用即时运行确实解决了它。你知道为什么会发生这种情况吗? - user4516335
2
Windows 10与Android Studio 2.3:要打开此窗口,请单击“文件”=>“设置”,在左侧面板中选择“构建、执行、部署”=>“即时运行”。 - Saravanan Sachi
@SaravananSachi:最新的3.0版本怎么样?我没有看到任何即时运行的设置。 - Mohit
此选项不适用于Android 3.0.1 Mac OS。我该如何解决这个问题? - Yogesh Nikam Patil
这就是我不喜欢Android Studio的原因之一。它看起来像是一个计划不周的软件。Google怎么可能希望开发者将“Session 'app':Error Installing APK”错误与“Instant Run”引起的问题相关联呢?! - Damilola Olowookere

29

解决此错误的最佳步骤是 - 在 文件 > 设置 > 构建,执行,部署 > 即时运行 中取消选中即时运行。


3
这个方法之前是可行的,但现在需要在Android Studio中依次进入“文件”、“设置”、“构建、执行、部署”、“即时运行”来进行操作。 - moyheen
之后我重新启动了Android Studio。一切都正常工作。感谢Prajapati Chetana。 - Bahu

21

注意: 建议先禁用即时运行(Instant Run),再尝试下列解决方案,以免浪费不必要的时间。

以下是可能的解决方案:

1) 确保您的手机使用USB电缆正确连接到PC: 在尝试以下修复措施之前,请确保您已正确地将手机连接到计算机上。如果正确连接,则手机应该正在充电。

2) 确保您的设备驱动程序已经更新至最新版本: 只需转到文件资源管理器,然后右键单击 计算机。然后选择管理(需要管理员权限)。在计算机管理窗口中,在左侧窗格中找到一个名为设备设备管理器的选项卡。从那里搜索您的设备。我的设备位于便携式设备下,名称以SAMSUNG开头,因此找到您的设备不应该太难。右键单击设备,然后选择更新驱动程序软件...。由于它更容易,我选择了自动搜索更新的驱动程序软件选项。

3) 在您的开发人员选项下启用 USB调试: 对于我的三星Galaxy S9,我在设置 > 开发人员选项中找到了它。从那里启用 USB调试。如果您找不到开发人员选项,请在设置中找到您的构建号码,并连续点击7次。我在 设置 > 关于手机 > 软件信息中找到了我的构建号。

4)确保您已经允许特定计算机进行USB调试:尽管您可能已经启用了USB调试选项,但仍需要允许特定计算机进行USB调试。一个弹出窗口应该会出现,询问是否允许USB调试并提供计算机的RSA密钥指纹。在按下“确定”之前,请确保勾选始终允许此计算机,以便将来不必再次操作。 如果您认为已经这样做了,但是您的设备仍然被标记为离线,请选择“开发者选项”中的吊销USB调试授权选项。然后,重新允许计算机进行USB调试。如果没有出现弹出窗口,请重新将手机连接到计算机(从手机端拔出电缆并重新插入)。

5)尝试清理和重建项目:在Android Studio中,打开左上方的Build选项卡,尝试使用清理重建选项。

如果以上方法都无效:通过卸载程序并重新下载安装文件(此处)重新安装Android Studio。扫描可能影响计算机的任何病毒。检查在重新安装Android Studio时是否出现任何错误。如果本答案中提供的方法都无法解决问题,请在此处寻求支持。

祝您好运。


清理和重建对我很有效。比禁用即时运行更好。 - McMath
还要确保您的手机设置为文件传输连接,而不仅仅是连接USB进行充电。 - Jamie M

10

按照以下步骤解决问题。

  1. 断开所有连接到系统的设备/关闭在系统上运行的所有模拟器。
  2. 从设置中关闭即时运行功能(Instant Run)。
  3. 执行一次干净的构建。
  4. 从设置中打开即时运行功能(Instant Run)。
  5. 执行一次干净的构建。
  6. 连接您的设备/启动您的模拟器,并确保它在线。
  7. 通过选择设备/模拟器来运行项目。

注意事项:

1)不应该在系统上运行不同的Android Debug Bridge (adb)实例。

2)如果使用Genymotion,则确保您使用在Genymotion设置中提到的自定义sdk路径,该路径与Android Studio设置中提到的路径相同。

按照所有步骤执行,相信您能够解决问题。


1
我尝试了所有步骤,但都没有成功。现在,在尝试您的过程后,我收到了5个新错误。我不认为我在系统上运行多个ADB实例,也不认为我正在使用Genymotion。我试图在上面发布新的错误。谢谢。 - Randall Reynolds
@RandallReynolds,您可以尝试通过清除缓存来尝试另一个选项吗?1)文件=>无效缓存/重启。2)单击“无效并重启”按钮。 - Prashant M

7

你可以使用你的项目的 Gradle 包装器来清理你的项目。在 Linux 下:

$./gradlew clean

在Windows中:
>gradlew.bat clean

7
非常简单。 按照以下步骤操作:

构建 -> 清理项目

然后

构建 -> 重新构建项目。


7

这个错误是由于Gradle与项目未同步造成的。请前往工具-安卓-使用Gradle文件同步项目,然后再次运行。在较新的Android Studio版本中,请前往文件->使用gradle文件同步项目。


3
其他选择都不行,但这个选项救了我的一天。 - Jay Ryu

6

这是一个很糟糕的问题,我已经遇到了很多次。首先在模拟器或实际设备上运行时,请确保Android监视器中不显示设备离线,如下图所示,由于电缆连接不良,设备正在显示离线状态,请首先确保它在线。

enter image description here

如果一切正常,则清除项目并重新构建项目。您可以从Build -> clean project / Build-> Rebuild project进行操作。

如果问题仍然存在,请尝试重新启动Android Studio。这是由于以上情况而发生的慷慨错误。但我按照描述的方式解决了它。


1
由于电缆连接不良,设备显示为离线是我的问题。谢谢! - Teoman shipahi

6

以上方法对我都没用,最简单的解决方案是:

文件 > 无效缓存/重启 > 无效并重启

在此输入图片描述


5

这个问题似乎是Android Studio的一个错误。

我尝试了所有其他解决方法,但问题会随机出现。

我还有一个自定义命名的apk文件。但Android Studio会随机选择自定义apk名称和默认apk名称。

添加Gradle-aware Make就解决了该问题。

以下是步骤。

  1. 菜单运行 -> 编辑配置

  2. 选择“应用程序”配置

  3. Before Launch操作中添加Gradle-aware Make

你完成了。

输入图像描述

输入图像描述

输入图像描述

以下文章帮助我找到了解决方案: https://android.jlelse.eu/android-studio-3-1-how-to-fix-it-b49f72eb054f


对我有用。按了 +1。 - Mark Lapasa
这只发生在我的一个项目中。这个解决方案对我有效。怎么可能应用程序只有一个项目无法构建,而其他项目可以? - Trupti Nasit

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