/*** 动态设置启用和禁用Component(service,activity,receiver)** @param context* @param enabled true:启用 ;false:禁用* @param clasz 要动态修改组件class*/public static void setComponentEnabled(Context context, boolean enabled,Class clasz) {if (context == null) {return;}final PackageManager pm = context.getApplicationContext().getPackageManager();final ComponentName componentName = new ComponentName(context.getApplicationContext(), clasz);try {final int newState =  enabled ? PackageManager.COMPONENT_ENABLED_STATE_ENABLED : PackageManager.COMPONENT_ENABLED_STATE_DISABLED;if( newState == pm.getComponentEnabledSetting(componentName)){return;}pm.setComponentEnabledSetting(componentName, newState, PackageManager.DONT_KILL_APP);LogUtil.i(TAG, "ComponentEnabledSetting is {}", newState);} catch (Exception e) {LogUtil.e(TAG, "setComponentEnabledSetting error");}}

注意:组件被禁止后再使用就会报NoSuchXXXException,使用的时候要判断是否存在,不然就会crash

动态启用和禁用mainfest中组件相关推荐

  1. 启用和禁用excel 中的加载项

    原文地址为: 启用和禁用excel 中的加载项 查看已安装的加载项 安装 2007 Microsoft Office System 时,将在计算机上安装多个加载项. 请在以下 2007 Microso ...

  2. 如何启用或禁用 Windows 中的传递优化?

    Windows 传递优化让你从网络中的其他电脑或正在下载相同文件的 Internet 上的电脑获取 Windows更新和 Microsoft 商店应用,还会根据设置将更新和应用从电脑发送到本地网络上的 ...

  3. linux系统启用夏令时,禁用Linux中的夏令时(DST)更改

    几周前,(土耳其能源和自然资源部)宣布,DST将是永久性的,GMT 3将在该国永久使用. 目前,我们的Linux服务器的时区设置为Europe / Istanbul.但是还没有发布tzdata更新. ...

  4. w10睡眠的计算机如何启动,如何在Windows10中启用或禁用允许混合睡眠

    如何在Windows10中启用或禁用允许混合睡眠 启用或禁用Windows10中允许混合睡眠的方法 在转到"允许混合睡眠"选项之前,我们将尝试了解什么是睡眠的基本术语?当用户希望离 ...

  5. 禁用服务器网络协议怎么设置,如何在Windows操作系统中启用和禁用DHCP?

    原标题:如何在Windows操作系统中启用和禁用DHCP? 无论在公共场所还是家中,WiFi可以为您的计算机提供网络连接.我们出行或者参加会议时需要携带计算机.计算机操作系统具有可操作的DHCP,让大 ...

  6. down 网卡端口周期性的up_Linux 中如何启用和禁用网卡?

    启用.禁用网卡有很多种方法.在这篇文章里,我们会介绍我们使用过的最好的 5 种方法. -- Magesh Maruthamuthu(作者) 你可能会根据你的需要执行以下命令.我会在这里列举一些你会用到 ...

  7. gitlab项目中启用或禁用 GitLab CI/CD Pipeline

    默认情况下,GitLab CI/CD 在新安装上会默认启用,要关闭的话,有两种方式: 需要在每个项目下单独关闭. 通过修改源安装和 Omnibus 安装中的设置.(未验证) 1.每个项目单独关闭 要在 ...

  8. 禁用计算机服务LanmanServer,[如何]在Windows 10中启用或禁用SMB协议 | MOS86

    服务器消息块(SMB)协议基本上是Windows中存在的文件共享协议.它允许应用程序读取/写入文件,并敦促服务器管理器为网络连接的计算机提供服务请求.此协议有三个版本,SMB版本1(SMBv1),SM ...

  9. Linux 中如何启用和禁用网卡?

    #: subject: (How To Enable (UP) And Disable (DOWN) A Network Interface Port (NIC) In Linux?) #: via: ...

  10. sql查询禁用缓存_如何在SQL Server 2017中启用和禁用身份缓存

    sql查询禁用缓存 Every data warehouse developer is likely to appreciate the significance of having surrogat ...

最新文章

  1. CentOS 6.7 如何启用中文输入法
  2. MySQL存储过程之代码块、条件控制、迭代
  3. xshell xftp使用
  4. java面向对象的多态_java面向对象(五)之多态
  5. 领会一些比较巧妙的算法
  6. Android 源代码下载
  7. 两个有序数组求中位数log(m+n)复杂度
  8. SurfaceFlinger 和 WindowManager
  9. Android添加横线和竖线分割界面
  10. 程序员需要了解依赖冲突的原因以及解决方案
  11. jq select 修改选中_转 jquery操作select(取值,设置选中)
  12. win10下Miracast无线投屏使用教程及异常解决方案(超详细)
  13. MySQL - 常见SQL笔试题整理(长期更新)
  14. openGL天空盒实现-立方体贴图
  15. 记录一下Material Dialogs的使用
  16. 【成功】qlv转MP4,超简单方法
  17. zk 系四大 L2 协议大 PK:进度、异同和生态
  18. 对女朋友超级抠门的星座男 12星座老公的致命缺点 12星女无法招架的求爱手段...
  19. linear regression and logistic regression 1
  20. 线性代数学习笔记——行列式的性质及拉普拉斯定理——10. k阶子式、余子式、代数余子式

热门文章

  1. 【HDU - 3038】How Many Answers Are Wrong 【带权并查集 - 向量偏移】
  2. 【POJ 3279】【开关问题】Fliptile【暑期 No.5】
  3. scala 主构造函数_Scala主构造器和辅助构造器
  4. hadoop2.x配合ZooKeeper集群环境搭建
  5. POJ 1127_Jack Straws
  6. 矩阵快速乘法---代码
  7. 【转】C++连接SQL2000
  8. Adobe向美国反垄断部门投诉苹果封杀Flash
  9. hibernate 3中要注意的地方
  10. 自定义线程池-c#的简单实现