Android 12.0 无源码app增加授予相关权限

在Android 12.0的系统开发中,面对无源码的app,如果需要默认授予悬浮窗权限,可以在PMS解析安装app时介入。本文分析了PackageParser类的源码,详细解释了如何在parseMonolithicPackage方法中,通过parseBaseApkTags解析xml内容,并在遇到user-permission标签时调用parseUsesPermission方法,为未申请悬浮窗权限的app进行添加。
摘要由CSDN通过智能技术生成

1.概述

 在12.0的系统产品开发中,对于一些无源码app增加一些权限,比如悬浮窗权限,由于app内部没申请这个权限, 所以需要系统适配默认授予这个权限,就需要在PMS解析安装app的时候 授予悬浮窗权限就可以了

2.无源码app增加授予相关权限的核心类

    frameworks/base/core/java/android/content/pm/PackageParser.java


3.无源码app增加授予相关权限核心功能分析和实现
3.1PackageParser中关于解析app的方法分析

@UnsupportedAppUsage
      public Package parsePackage(File packageFile, int flags, boolean useCaches)
              throws PackageParserException {
          if (packageFile.isDirectory()) {
              return parseClusterPackage(packageFile, flags);
          } else {
              return parseMonolithicPackage(packageFile, flags);
          }
      }
      
      @NonNull
      public stati
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

安卓兼职framework应用工程师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值
>