我们常说 Android 系统最大的优点是开放性与包容性,但这也造成了应用行为不容易掌控的缺点。特别是国内应用与系统,失去了谷歌 Play 商店官方的应用审核政策后普通用户根本无法确定应用获取的权限用来干什么,又在后台执行了哪些行为。

谷歌最近更新几个版本的 Android 系统都在逐步的改善这个状况,无论是否 Play 版本得应用起码都有了清晰得申请权限警告,让未知应用的「行为素质」有了很大的提升。在此之上 Android 开放性让开发者也能够针对应用行为不容易掌控的问题研究新应用,比如今天要介绍的 IFW(Intent Firewall) 就是利用系统隐藏的功能实现完全控制任何应用的任何行为的方法。

IFW 是 Android 系统(4.4 以上)中本来就内置的功能,一般是用来给手机厂商控制应用某部分代码实现的功能是否执行,所以并不对外开放。但是 Root 手机后,我们就可以访问这个功能,并制定你自己的配置。

提示 :使用 IFW 需要手机获得 ROOT 权限,具体可以查看我的文章「在 2019 年,Root 是否还有必要?」。

Intent(意图)与 IFW

要想说明 IFW 是什么,首先我们先简单解释下这里的「I」代表的 Intent 意图。

Android 上的 Intent

简单来讲意图就是 Android 应用执行任何动作的基础,举下面三个例子,大家就很容易理解它是什么了。

基础印象:当我们想从文件管理器分享文件到微信的时候,点击分享按钮,文件管理器会发起一个Intent(意图)说「我想要调取分享菜单」,然后系统就会显示分享菜单;接着当用户点击微信图标的时候,分享菜单就会发起一个Intent(意图)说「我想要把文件分享给微信」,系统就会将带有文件路径的意图传给微信,微信接收到后自行实现分享功能(这里分享的每一步也会有意图)。 分享文件步骤软件对软件:应用内的功能也是通过意图实现的,比如最简单的从微信的主界面切换到某个聊天界面,就是微信主界面发起切换界面的Intent(意图)(包括目标界面的 ID)到系统,系统接收到后才会切换到聊天界面。 页面跳转步骤,图片来自 Android Developer软件对硬件:应用对硬件的响应也是通过意图实现的,比如音乐应用响应媒体按钮(上一首、下一首、播放等)接受我们按下按钮后系统发起一个意图说「默认的音乐应用动起来」,系统里面所有音乐软件都会收到这个意图,然后检查自己是不是默认的(或者正在播放),不是就不会响应这个意图。

通过这三个例子,我们可以看到,Android 上的万事万物都是基于 intent 的组件调用。这样只要我们能够控制 Intent,就能完全控制应用行为。

[ ...... ]

本文为付费栏目文章,出自《Power+ 2.0》,订阅后可阅读全文。

android ifw 启动广告,使用 IFW 完全控制 Android 应用行为 | 实用技巧相关推荐

  1. android 去除启动广告_安卓iOS去除烦人的启动广告,净化手机必备神器

    原标题:安卓iOS去除烦人的启动广告,净化手机必备神器 发现新奇,分享乐趣~ 随着使用手机的时间越长,我们安装的APP也越来越多. 虽然现在的手机性能都能强,APP几乎都是秒开,但许多APP总有开屏广 ...

  2. android应用启动页面显示不出来了,Android应用中启动页出现白屏如何解决

    Android应用中启动页出现白屏如何解决 发布时间:2020-12-11 14:41:17 来源:亿速云 阅读:100 作者:Leah 今天就跟大家聊聊有关Android应用中启动页出现白屏如何解决 ...

  3. android ifw 启动广告,应用控制器清爽无广告版-应用控制器官方最新版v1.9.5 免费版-腾牛安卓网...

    应用控制器官方最新版,非常好用的安卓系统管理软件.具备返回强退.关屏强退.服务禁用.唤醒锁禁用等功能,帮助你们有效的优化系统应用,更好的提升自己的手机流畅度. 主要功能: ·服务禁用.唤醒锁禁用.定时 ...

  4. android多类型启动广告,如何在我的应用启动界面实现「开屏广告」?

    什么是开屏广告 开屏广告是一种在应用启动时且在应用主界面显示之前需要被展示的广告.一般是5s展示时间,广告展示时间结束后自动进入应用,用户可以点击跳过按钮直接进入主界面. 开屏广告示例 开屏广告的优势 ...

  5. android 去除启动广告_APP启动页广告去除

    转载是一种动力 分享是一种美德 每日分享时刻- 很多APP在启动时都会出现广告.这些广告会拖慢APP启动速度.增加耗电量,如果一不小心点错了,还会唤起其他APP,令人反感. 往期小编有介绍过相应的ap ...

  6. Android安全启动学习(五):Android Verified Boot 2.0

    1.AVB概要 AVB2.0被用于启动引导,此用法添加一个"vbmeta.img"镜像. public key被编译到bootloader中用于校验vbmeta数据,vbmeta. ...

  7. android app防止锁屏_如何控制Android不锁屏

    锁定屏幕对于移动终端来说是非常有必要的,但是对于机顶盒产品就没有这个必要了.所以本文介绍一下怎样让Android设备永不锁屏. Android系统的锁屏时间存放在Setting数据库中,字段为Sett ...

  8. android怎么实现广告页,如何:在Android应用中加入广告方法步骤!

    我打算在第一个图拍照按钮下边的设置按钮加入弹出菜单(更多应用和关于2个选项),在更多应用菜单中展示广告墙,在第二个图界面的上方展示一个广告 条,推送广告因为不占用广告界面,所以不用考虑放在哪里.(当然 ...

  9. android密码可见不可见的光标控制,Android EditText 在设置为输入密码的时候 密码是否可见 光标在最后显示...

    释放双眼,带上耳机,听听看~! 今天在开发登录注册模块的时候,用EditText实现密码的输入,项目需要密码是可以选择可见或者默认的隐藏模式,很简单,但是第一次遇到就记录下来分享给大家. 布局文件 a ...

最新文章

  1. 解决vue初始化数据时的闪烁问题
  2. C/C++-style输入输出函数
  3. LayoutInflater类详解
  4. [卷积核]空洞卷积(转)
  5. 物联网卡产品的应用和拓展
  6. python 安装talib模块
  7. Cheat Engine(CE)教程
  8. 三角网导线平差实例_附合导线平差步骤
  9. MySQL运算符介绍(萌新必备!!)
  10. appstore app 下载地址
  11. 当生命科学遇上AI,会产生怎样1+1>2效果?
  12. angular实现双向绑定
  13. Elsevier期刊投稿所遇到的问题及解决方案
  14. 【数据存储】signed,unsigned到底怎么区分?如何计算?
  15. UG NX1980一键安装正式版+安装说明(安装简单)
  16. 小米大佬分享8年工控上位机工作经历
  17. 并集在计算机中的应用,交、并集思想在实际中的应用
  18. 【MySql】mysql存储毫秒级日期以及PHP时间戳格式转化
  19. 洛谷B2132 素数对(质数存储)
  20. android 自定义下拉菜单

热门文章

  1. .NET Conf 2019 今天在上海开幕,图片直播地址
  2. .net持续集成测试篇之Nunit文件断言、字符串断言及集合断言
  3. Ocelot简易教程(五)之集成IdentityServer认证以及授权
  4. ASP.NET Core 使用Cookie验证身份
  5. [Cake] 0.C#Make自动化构建-简介
  6. 技术人生,专家本色——采访张善友老师后的一点感受
  7. [转]redis 5.0.5 5分钟搭建redis集群
  8. 【ArcGIS微课1000例】0012:ArcGIS创建及连接ArcSDE企业级地理数据库实例
  9. Android之JNI动态注册native方法和JNI数据简单使用
  10. Android之关于电话录音原理,目前的方法还是只能录MIC