从市场安装 Android 应用程序与通过网络下载或 adb 进行侧面加载有何不同?

Jac*_*cob 5 android adb

我知道在 root 手机上安装 Android 应用程序有四种方法:

  1. 通过Android市场安装
  2. 在“设置”->“应用程序”中启用“未知来源”并从网络下载 .apk
  3. 在“设置”->“应用程序”->“开发”和 adb install 中启用“USB 调试”
  4. 在“设置”->“应用程序”->“开发”中启用“USB 调试”,然后 adb Push 到 /data/app 或 /system/app

这些选项之间的主要区别是什么?如果我删除 Market/Vending 和 PackageInstaller 应用程序,我仍然可以从 adb 旁加载吗?出于此问题的目的,假设我的手机上没有市场应用程序。

gna*_*nac 4

安装的主要区别在于升级路径。市场安装的应用程序在有更新时通知您(通过市场)。手动安装的应用程序 (2-4) 取决于应用程序来通知您任何给定应用程序可能支持或不支持哪些应用程序,或者您始终可以手动检查应用程序的源以查看是否有可用的更新。我相信通过 adb Push 安装的应用程序需要重新启动才能正确注册为已安装。

如果您决定删除 MarketUpdater.apk,我相信唯一的问题将是前面提到的先前市场安装的应用程序的自动更新通知。如果您想删除市场应用程序本身而不是更新程序,Vending.apk 就是您所寻找的。

我不会删除 PackageInstaller。它用于安装(和注册)应用程序,无论安装方法如何。有一次,我不小心用不兼容的 busybox 替代品替换了 PackageInstaller 使用的命令行工具。当我尝试手动安装应用程序时,PackageInstaller 会呕吐。我修复了命令行工具程序,但重点是在手动安装过程中使用了 PackageInstaller。