android 9 预装apk可卸载

查到需求都是在data/app下方apk,但是o系统之后这个路径就失效了

查看源码码修改可以实现此目的。

路径: 

frameworks\base\services\core\java\com\android\server\pm\PackageManagerService.java
File privilegedVendorAppDir = new File(Environment.getVendorDirectory(), "priv-app");

 

修改:

            /*
            scanDirTracedLI(privilegedVendorAppDir,
                    mDefParseFlags
                    | PackageParser.PARSE_IS_SYSTEM_DIR,
                    scanFlags
                    | SCAN_AS_SYSTEM
                    | SCAN_AS_VENDOR
                    | SCAN_AS_PRIVILEGED,
                    0);
            */
             scanDirTracedLI(privilegedVendorAppDir,
                    mDefParseFlags
                    | PackageParser.PARSE_IS_SYSTEM_DIR,
                    scanFlags                    
                    | SCAN_AS_VENDOR
                    | SCAN_AS_PRIVILEGED,
                    0);

这样,将apk预放在  android9-8mm\out\target\product\evk_8mm\vendor\priv-app 下,整编后烧录,

apk已经在系统里面了,而且可以卸载,可以卸载,可以卸载!!!

 

参考资料:

https://www.jianshu.com/p/992766525cf1

评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值