Android没有图标的APK打开方法

作者 by adtxl / 2022-03-24 / 暂无评论 / 364 个足迹

————————————————
版权声明:本文为CSDN博主「VaderZhang」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/zhangdaxia2/article/details/101017950

在安装完成一个APK后,发现没有生产图标,但是需要马上使用,要如何而处理呢?以下所有指令在adb shell中完成。

1.找到APK的包

pm list packages

执行该指令,找到APK的包,比如我安装的是一个指南针应用,通过该指令找到这个包:

memsic.compass_rev4

2.找到APK包的MainActivity

dumpsys package | grep "compass"

执行完该指令后,会dump所有安装的包的信息,我们过滤出compass信息:

1|mydevice:/ # dumpsys package | grep "memsic"
        730220d memsic.compass_rev4/.MainActivity
  [memsic.compass_rev4]
  Package [memsic.compass_rev4] (ceca5c2):
    pkg=Package{14fdfd3 memsic.compass_rev4}
    codePath=/data/app/memsic.compass_rev4-1
    resourcePath=/data/app/memsic.compass_rev4-1
    legacyNativeLibraryDir=/data/app/memsic.compass_rev4-1/lib
    applicationInfo=ApplicationInfo{566c710 memsic.compass_rev4}
    dataDir=/data/user/0/memsic.compass_rev4
  [memsic.compass_rev4]
      path: /data/app/memsic.compass_rev4-1/base.apk
      status: /data/app/memsic.compass_rev4-1/oat/arm/base.odex [compilation_filter=interpret-only, status=kOatUpToDate]
  [memsic.compass_rev4]

memsic.compass_rev4/.MainActivity就是我们需要的Activity.

3.使用am指令打开APK

am start -n memsic.compass_rev4/.MainActivity

通过am发送打开activity的intent。执行成功打印如下:

mydevice:/ # am start -n memsic.compass_rev4/.MainActivity
Starting: Intent { cmp=memsic.compass_rev4/.MainActivity }

这个时候查看设备显示屏,应用已经启动。

独特见解