当前位置: 首页 > news >正文

吉林省高等级公路建设局 网站聊城市建设学校

吉林省高等级公路建设局 网站,聊城市建设学校,什么网站可以查建设用地规划许可证,江西中恒建设集团网站文章目录 概述一、app应用安装黑名单核心代码二、app应用安装黑名单核心功能分析三、代码实战1.先导入所需要的包2.添加获取黑名单方法3.添加限制黑名单方法4.上层使用PS:查看当前黑名单 总结 概述 在13.0系统rom定制化开发中#xff0c;客户需求要实现应用安装黑名单功能客户需求要实现应用安装黑名单功能在黑名单中的应用不允许安装实现一个 控制app安装的功能并且暴露接口给上层应用这需要从app安装流程入手才可以实现功能 PMS就是负责管理app安装的功能就在这里添加就可以了接下来看具体实现这个功能 一、app应用安装黑名单核心代码 framework/base/core/java/android/content/pm/IPackageManager.aidl framework/base/services/core/java/com/android/server/pm/InstallPackageHelper.java framework/base/services/core/java/com/android/server/pm/PackageManagerService.java 二、app应用安装黑名单核心功能分析 PackageManager是用于获取Android系统中应用程序的信息查询应用程序相关信息(applicationactivityreceiverserviceprovider及相应属性等、查询已安装的应用、 增加或删除权限、清除数据用户、服务器、代码段等 IPackageManager接口类中定义了服务端和客户端通信的业务函数还定义了内部类Stub该类从Binder派生并实现了IPackageManager接口。 PackageManagerService继承自IPackageManager.Stub类由于Stub类从Binder派生因此PackageManagerService将作为服务端参与Binder通信。 PackageManagerService简称PKMS是Android系统中核心服务之一管理着所有与package相关的工作常见的比如安装、卸载应用、信息查询等工作主要完成以下核心功能 1.解析AndroidManifest.xml清单文件解析清单文件中的所有节点信息 2.扫描本地文件主要针对apk主要是系统应用、本地安装应用等。 实现功能需求 我这里用了简单的方法在InstallPackageHelper.java中增加黑名单接口实现设置黑名单和获取黑名单接下来在InstallPackageHelper中的安装app的方法中判断是否是黑名单内的app然后确定是否让安装从而实现功能 三、代码实战 1.先导入所需要的包 //add LQX import android.text.TextUtils; import java.util.Arrays; import java.util.List; //add LQX有些Android13是没有android.provider.Settings.System定义的就需要多加一个 import android.provider.Settings2.添加获取黑名单方法 //add LQXprivate boolean isBlackListApp(String packagename){String installBlackApp android.provider.Settings.System.getString(mContext.getContentResolver(), install_black_app);if (TextUtils.isEmpty(installBlackApp)) {return true;}else{String[] split installBlackApp.split(,);ListString installBlackAppList Arrays.asList(split);if (installBlackAppList.contains(packagename)) {return true;}}return false;} //add LQX3.添加限制黑名单方法 在preparePackageLI(InstallArgs args, PackageInstalledInfo res)中添加 try (PackageParser2 pp mPm.mInjector.getPreparingPackageParser()) {parsedPackage pp.parsePackage(tmpPackageFile, parseFlags, false);AndroidPackageUtils.validatePackageDexMetadata(parsedPackage);} catch (PackageManagerException e) {throw new PrepareFailure(Failed parse during installPackageLI, e);} finally {Trace.traceEnd(TRACE_TAG_PACKAGE_MANAGER);}//add LQXif(isBlackListApp(parsedPackage.getPackageName())){Log.d(InstallPackageHelper,parsedPackage.getPackageName() is does not instant app);throw new PrepareFailure(INSTALL_FAILED_INTERNAL_ERROR,app is in the BlackList.packageName);}//add LQX// Instant apps have several additional install-time checks.4.上层使用 Settings.System.putString(mContext.getContentResolver(), install_black_app,com.LQX.systemproperties,com.LQX);多个包名用逗号隔开 PS:查看当前黑名单 settings get system install_black_app总结 以上就是安卓13的应用安装黑名单以及接口教程。
http://www.w-s-a.com/news/527766/

相关文章:

  • 教育网站建设毕业设计说明书门户网站模式
  • 洛阳霞光建设网站html做分模块的网站
  • 域名建议网站wordpress 伪静态html
  • 网站风格化设计方案免费模式营销案例
  • 凤翔网站建设农村建设自己的网站首页
  • 怎样用网站做单笔外贸建筑设计公司合作加盟
  • 建网站买的是什么网站开发三层结构
  • wordpress图纸管理网站2345网址导航智能主版
  • 想调用等三方网站数据该怎么做培训课程
  • 高端营销网站建设wordpress咨询
  • 网站搜索框如何做创业怎么做网站
  • 网站手机版管理链接产品推广找哪家公司
  • vuejs 可做网站吗蜘蛛互联网站建设
  • 沈阳网站备案查询17zwd一起做业网站
  • 石家庄大型公司建站广州设计网站培训学校
  • 如何让百度收录中文域名网站wordpress前台管理评论
  • 铁岭 建筑公司网站 中企动力建设佛山app开发公司
  • 网站开发用的电脑深圳专业网站建设服务
  • 内容营销价值wordpress博客优化插件
  • 最优惠的郑州网站建设淘宝网商城
  • 做封面网站企业网站优化服务商
  • 电子商务网站设计是什么蚌埠铁路建设监理公司网站
  • .name后缀的网站做房产网站多少钱
  • 手机上传网站源码网站app封装怎么做
  • 做的网站放在阿里云网站建设投标书范本
  • 做文化传播公司网站wordpress仿简书
  • 什么网站有题目做西宁网站制作哪里好
  • 网站上添加图片的原则优易主机 wordpress
  • 用php做的网站源代码那里有做像美团的网站的
  • 网站建设百科有什么做兼职的网站