如何实现让一个第三方软件的桌面启动图标消失

首先,我们拿到一个apk,正常情况下安装,是会在手机中有一个图标的,这个是apk的唯一入口,为什么会有这个入口呢?那是因为,

在apk的AndroidManifest.xml文件中,有<categoryandroid:name="android.intent.category.LAUNCHER" />这句话。这句话的意思就是,在手机中创建一个图标作为启动软件的入口,也就是我们看到的logo。那么这样就简单了,只要注释掉这一句话,是不是就可以实现让这个唯一入口消失呢?

下面可以进行尝试:使用apktool工具命令,对apk进行反编译,然后找到AndroidManifest文件,注释掉上面那句话,然后使用apktool命令进行回编译,这时候文件目录下会产生一个dist的文件夹,这里面就是我们回编译的apk。

这里注意,这个apk是没有签名的,没有签名是不能安装的,那么我们就要对它进行签名,首先:

用 KeyTool 产生证书文件:

keytool-genkey -keystore cmd.keystore -keyalg RSA -validity 10000 -alias cmd.keystore 在该路径下生成cmd.keystore证书文件

然后签名apk:

重要!!括号内参数是为了解决由于jdk7修改了jarsigner默认算法导致签名后apk安装失败,如果是jdk6可不加:

jarsigner-verbose (-digestalg SHA1 -sigalg MD5withRSA)

-keystorecmd.keystore -signedjar nbmi.apk(签名后apk名称路径) Bmi.apk(未签名apk名称路径) cmd.keystore

ps:这个问题我Google了好一阵子才知道。

这样我们就会产生一个签名之后的apk,这个apk就可以安装了,安装之后会发现,入口没了。这时候我们的搜救者app怎么启动没入口的app呢?那么需要反编译拿到包名,直接通过包名来启动这个软件(前提是软件已经安装)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值