实现adb install替换Android应用的apk后应用自动运行

背景
对于在启动后,仅在后台运行一个或多个Service,而不立马启动一个Activity,且在桌面不显示应图标的应用,默认情况下,通过adb install 安装了apk后,要让其运行起来,须通过adb shell am start xxx 命令来手动启动应用,存在一定的不便之处。
需求
如果adb install的应用不是首次安装,而是替换当前已安装的应用,那期望它在安装完毕后能自动重启运行,而不需通过adb 命令来启动。
解决方案
实现自动启动的通用方案是声明广播接收器并在AndroidManifest中静态注册。为实现如上需求,我们需要在该广播接收器中额外监听PACKAGE_INSTALL,PACKAGE_ADDED,PACKAGE_REPLACED这三个广播,即声明的Service如下所示:


同时要声明如下权限:

适用范围
【实现adb install替换Android应用的apk后应用自动运行】亲测在Android 4.4.3 和5.1 上有效

    推荐阅读