Android Studio:如何在运行或debugging之前自动卸载APK(或执行adb命令)?

现在我需要每次在Android Studio中运行/debugging之前卸载应用程序。 因为我需要在运行\ debug应用程序之前重新创build数据库。 我知道我可以在terminal运行命令“adb uninstall [package_name]”清除/ data / data / [package_name]下的文件。 但是如果我每次都要执行这个命令,这并不方便。 我希望当我点击“运行”“debugging”button时,可以自动执行“adb卸载”命令。

adb uninstall <package_name> 

可以用来通过你的电脑卸载一个应用程序。 如果您希望每次通过Android Studio启动应用程序时都会自动发生这种情况,您可以这样做:

  1. 在Android Studio中,单击运行button左侧的下拉列表,然后select编辑configuration…
  2. 点击Android应用程序下的应用程序,然后在常规选项卡中find标题“启动之前”
  3. 点击+button,select运行外部工具,点击popup窗口中的+button。
  4. 给一些名称(例如adb卸载)和说明,然后在程序中键入adb ,然后在参数:中uninstall <your-package-name> 。 确保在popup窗口中单击确定时select新项目。

注意:如果PATH环境variables中没有adb,请在Program:字段中指定adb的完整path(例如/ home / user / android / sdk / platform-tools / adb)。

 adb uninstall com.my.firstapp 

我正在使用Android Studio 2.1.2 。 我和OP有相同的要求。 虽然上面的两个答案似乎帮助大家,但它并不适合我。 我分享了对我有用的东西。

进入main menu/Run/Edit Configuration 。 select左侧的Android Application app下的Android Application 。这应该打开多选项卡窗格。 selectGeneral选项卡(将是默认值),单击底部的绿色+唱歌(在文本下方Before launch: Gradle -awake ... )。

将出现一个下拉菜单,selectGradle-aware-make选项。 另一个文本框将popup。 在此文本框中input:app:uninstallAll 。 (您可以使用ctrl + space来使用自动完成来确定正确的目标,而无需键入所有内容,还可以帮助您select适合您的正确应用程序名称)。 并设置apply/ok 。 重新启动您的应用。

注意:每次您启动您的应用程序,这个新的目标将尝试从您的模拟器或设备卸载您的应用程序。 因此,如果您的testing设备不可用,则在卸载时您的launc可能会失败,但会继续启动您的模拟器。 因此,首先启动您的仿真器,或者在第一次失败后重新启动(因为首次启动将启动仿真器,尽pipe卸载失败)。

如果要在连接到单个设备/仿真器时卸载,请使用以下命令

 adb uninstall <package name> 

其他与多个设备,然后使用下面的命令

 adb -s <device ID> uninstall <package name>