如何在不使用Eclipse的情况下在Android上安装/替换

Pet*_*vdL 23 command-line android install apk

一位好友发给我一个.apk文件的更高版本.我的设备上已有早期版本.

当我尝试adb安装文件时,我得到了这个:

$ adb install ../FlashLite.apk 
320 KB/s (18311 bytes in 0.055s)
    pkg: /data/local/tmp/FlashLite.apk
Failure [INSTALL_FAILED_ALREADY_EXISTS]

$ adb uninstall FlashLite.apk
Failure

$ adb uninstall /data/local/tmp/FlashLite.apk
Failure
Run Code Online (Sandbox Code Playgroud)

如何从cmd线安装/更换?我没有源代码,所以我不能从Eclipse中做到这一点.

has*_*man 79

卸载时,必须指定活动的java路径.

adb uninstall com.haseman.myapp
Run Code Online (Sandbox Code Playgroud)

我的主要活动是在src/com/haseman/myapp/LaunchActivity.java

此外,您可以使用替换安装

adb install -r myApplication.apk
Run Code Online (Sandbox Code Playgroud)

但是,通常情况下,如果不使用相同的密钥对手机上的apk和要安装的apk进行签名,则替换构建将失败.如果您看到错误"INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES",则需要先卸载应用程序然后再安装它.


syn*_*nic 35

adb uninstall [packagename]例如,您必须使用adb uninstall org.vimtips.supacount.

这是清单中列出的包名称:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="org.vimtips.supacount"
    android:versionCode="6" android:versionName="0.1.5">
Run Code Online (Sandbox Code Playgroud)

  • 这是一个比标记正确的答案更有用的答案,因为在我的手机上,应用程序根本没有显示在菜单中被删除...所以我真的被卡住了.谢谢Synic. (2认同)
  • 更不用说比点击所有这些菜单容易了! (2认同)

小智 22

您需要提供-r键:

adb install -r myapp-release.apk
Run Code Online (Sandbox Code Playgroud)

这已经讨论过了: 为什么adb install <same-packagename-always-release>失败?


jqp*_*liq 5

在设置 - >应用程序 - >管理应用程序下删除手机中的旧版本,然后安装应该有效.