如何在Android手机上安装APK文件?


113

我的计算机上(Eclipse环境)上有一个简单的“ Hello Android”应用程序,并且已经构建了一个APK文件。如何将APK文件传输到Android手机进行测试?

我的手机是运行Android 2.2(Froyo)的Ideos。我的笔记本电脑装有Windows Vista。我安装了最新的Android SDK。

Answers:


40

我引用Android的“ Hello”是因为我不能说得更好;-)

您需要在手机本身上启用USB调试(通过启动“设置”应用程序,然后选择“ 应用程序” >“ 开发” >“ USB调试”),如果尚未安装Android USB设备驱动程序(仅Windows),然后将手机插入计算机使用手机随附的USB电缆。

如果模拟器窗口已经打开,请关闭它。只要插入电话,Eclipse就会在电话上加载并运行应用程序。您需要右键单击该项目,然后选择运行方式 > Android应用程序


我如何下载usb_drivers,我的Eclipse AVD Manager->可用的软件包没有“ USB驱动程序”选项
gath

只是dnld。从互联网的USB驱动程序并进行安装
N-JOY

1
注意:在Android 4.2中,“开发”菜单处于隐藏状态。该视频显示了如何在youtu.be/mp07dPusJNA
Jose M Vidal

4
这没有解决问题。.它只是显示了在设备中安装应用程序的另一种方法。
newton_guima 2014年

244

只需使用ADB,如下所示:

adb install <path to apk>

另请参阅“ 在Android Debug Bridge中安装应用程序 ”部分。


36
如果该应用程序已经存在于设备上,则可能需要使用该-r选项才能重新安装它。
亚历克斯·金

1
您可能还需要完全卸载该应用程序才能成功安装。使用该-r选项并不能解决我的问题。
Joshua Pinter

3
-d如果您还运行了模拟器,那么使用该选项也很有价值。因此,命令为adb -d install -r <path_to_apk>
约书亚·品特

如果文件在android设备上,是否可以安装apk?
Aero Wang

2
@Joshua Pinter不要只写一些神秘的参数。向他们解释:“如果有多个可用设备,但只有一个是仿真器,请使用-e选项将命令发送到仿真器。同样,如果有多个设备但仅连接一个硬件设备,请使用-d选项发送命令到硬件设备。” developer.android.com/studio/command-line/adb
令人难以置信的

73

如果您可以在电话上访问Gmail帐户,则一种简便的方法(以最小的设置工作量)是将.apk文件邮寄到该Gmail帐户。

然后,如果您通过手机上的本机Gmail应用程序访问该帐户,它将识别出附件是一个应用程序,并提供一个“安装”按钮。

根据其他响应,此方法还要求您选择设备上的USB调试。

试试这个-这非常容易;-)


5
太棒了-谢谢!现在,我将能够轻松更新我奶奶平板电脑上安装的自定义应用程序。
Garret Wilson

1
使用此方法安装应用程序时,不应将手机连接到USB存储器。如果已连接,则Gmail应用程序将崩溃,因为需要SD卡才能保存文件。请注意:)
Tushar Vengurlekar

7
否,此方法不需要启用“ USB调试”,但是需要启用“未知源”。
克里斯·斯特拉顿

+1是一个不错的低技术解决方案。我必须使用驱动器,因为gmail阻止了我发送APK文件的操作。
凯文·沃克曼

20

如果您没有SDK或要设置第三方应用程序,则这是另一种方法:

  1. 将.APK文件复制到您的设备。
  2. 使用文件管理器找到文件。
  3. 然后点击它。
  4. Android App安装程序应该是弹出窗口中的选项之一。
  5. 选择它并安装。

对第三方应用程序使用这种方式,则没有sdk。
miket3

适用于Mac OS X El Capitan。在终端中,键入:adb install /Users/Simon/Documents/MyApp/app/build/outputs/apk/app-debug.apk
Simon

9

外部设备,我们可以使用:

adb install file.apk

要么 adb install -r file.apk

  adb install [-l] [-r] [-s] [--algo <algorithm name> --key <hex-encoded key> --iv <hex-encoded iv>] <file>
                               - push this package file to the device and install it
                                 ('-l' means forward-lock the app)
                                 ('-r' means reinstall the app, keeping its data)
                                 ('-s' means install on SD card instead of internal storage)
                                 ('--algo', '--key', and '--iv' mean the file is encrypted already)

在设备内部,我们可以使用:

pm install file.apk

要么 pm install -r file.apk

pm install: installs a package to the system.  Options:
    -l: install the package with FORWARD_LOCK.
    -r: reinstall an exisiting app, keeping its data.
    -t: allow test .apks to be installed.
    -i: specify the installer package name.
    -s: install package on sdcard.
    -f: install package on internal flash.
    -d: allow version code downgrade.

8

将APK文件放入Android SDK的tools文件夹中,并在命令提示符下提供工具的路径,然后使用以下命令:

adb install "name".apk file

如果您没有安装Android的SDK,则可以使用另一种方式安装3rd paty应用程序
Anand

它不能在tools文件夹中工作,而必须在“ platform-tools”内部。
Mohammad Arif 2012年

8

直接连接您的Android设备,然后在设备中选择USB调试选项。Eclipse会自己找到您的设备,然后运行代码。

或者,将您的APK文件粘贴到Android SDK Platform-tools文件夹中,然后从命令提示符处进行安装,如下所示:

D:......../platform-tools> adb install yourfile.apk.

4

用于调试:

  • 在手机上启用USB调试(设置 -> 应用程序 -> 开发)。
  • 将手机连接到计算机,并确保安装了正确的驱动程序。
  • 在Eclipse中,将项目作为Android应用程序运行(右键单击项目-> 运行方式 -> Android应用程序)。

安装APK文件:

  • 导出APK文件,确保对其进行签名(右键单击项目-> Android工具 ->导出签名的应用程序包)。
  • 连接手机,启用USB调试。
  • 在终端上,使用ADB安装APK文件(adb install path-to-your-apk-file.apk)。

2

我使用命令提示符在设备(Nexus 7)上手动安装.apk文件,但以下内容在理论上应可在任何android设备上正常工作(在将设备启用为开发人员模式后)。这种方法变得很麻烦,因此我创建了一个简单的批处理文件,因此现在只需双击它即可为我安装(必须将设备插入开发机器中)。只需创建一个文本文件,然后将其另存为.BAT即可,并添加以下文本(自定义以容纳您的文件路径):

cd C:\{**path to your install location**}\sdk\platform-tools

adb install C:\{**path to your .apk file**}\{**project/apk file name**}.apk

0

出于价值,将系统应用程序安装到/system/app目录将是:

adb push appname.apk /system/app/

只需确保您位于要安装的目标.apk文件所在的正确目录中,否则就可以将.apk文件复制到platform-toolsAndroid SDK 的目录中,并且adb一定可以找到它。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.