44

我厌倦了卸载而不是在开发中重新安装。
有没有办法做 adb -force install some.apk ?我的意思是这样可以节省很多时间。每次去系统->应用程序->卸载每次签名都不同。

显然调试是一种开发设置,所以我不明白为什么需要经常手动卸载应用程序,这是浪费时间吗?任何可以使开发更容易的东西都会产生更好的代码和更好的应用程序,那么这是怎么回事?

我在更短的时间内热部署到服务器端 Java EE 服务器。这在命令行上不是一个问题,因为可以执行卸载或将 adb 脚本替换为卸载后安装。
然而,在日食中它仍然是一种痛苦。有人指出,这主要是关于签名更改。是的。但是为什么签名会在开发和调试模式中发生变化,并导致重新安装问题?

4

7 回答 7

227

adb 有 [-r] 参数要重新安装。

adb install -r some.apk
于 2012-08-19T16:44:45.300 回答
13

您可以进行的网络搜索显示您的 adb 问题的答案是:

adb uninstall some.package.name

请注意,这不是您在 adb install 中使用的 file.apk 名称,而是它最终安装的实际包名称。

于 2012-05-02T23:32:42.617 回答
12

正常的构建过程使用 android 调试密钥库,该密钥库可以在您的主目录的 android 文件夹中找到(路径取决于您的操作系统)。

使用此调试密钥库,您的应用程序将被签名。只要您的应用程序没有安装另一个签名,这个调试签名就可以安装在世界上的每一台安卓设备上。

当你说你只做代码检查时,重建和你的签名是不同的,而不是你的构建过程可能被破坏了。您的调试密钥库至少有效期为一年,只要您在同一台 PC 上构建生成的 APK,就永远不会有不同的签名。

为了进一步检查,您应该在开发过程中带来一些亮点。你用什么?蚀?

如果您在不同的开发机器上工作,请从一台机器中选择一个密钥库并将其放入您的版本控制中,并使用它来使用调试签名对您的 apk 进行签名。

于 2012-05-02T23:00:36.563 回答
3

您可以通过传递-r参数来强制安装应用程序。

-r参数让 adb 重新安装应用程序。

adb install -r app-release.apk
于 2019-07-04T12:47:56.303 回答
3

adb install -r -d path/to/file.apk

-r 替换 -d 强制降级

于 2021-03-02T11:33:50.480 回答
-2

debug keystore 可以在 Eclipse 中的 Preferences/Android/Build/Custom debug keystore 中设置,在团队工作时非常有用。每个成员都应该在那里设置相同的密钥库,然后共享设备就没有问题了。

于 2012-08-16T06:48:51.830 回答
-5

用于卸载 adb 卸载 app_package_name

用于安装 adb install app_package_name

进入 Windows 的命令提示符和 linex/Macos 的终端

于 2012-11-30T11:34:44.567 回答