站点图标 高效码农

Android用户必看!3步教你用GKD自动跳过所有开屏广告

目录

  1. 背景:为何要屏蔽开屏广告

  2. 什么是 GKD

  3. 核心原理:无障碍服务 + 自定义规则

  4. 安装与初次配置

  5. 使用示例:自动跳过开屏广告与确认流程

  6. 编写与管理本地规则

  7. 搭建远程订阅源

  8. 高级玩法:多条件联动和流程化操作

  9. 常见问题与故障排查

  10. 结语


背景:为何要屏蔽开屏广告

在日常使用 Android 应用时,我们经常会遭遇各种“开屏广告”或繁琐的确认流程。

  • 干扰体验:每次启动都要等 5–10 秒才能进入主界面;
  • 重复操作:一些应用甚至在页面内弹出二次确认,浪费时间;
  • 无效流量:广告点击误触带来安全风险与流量浪费。

针对这些场景,如果能自动检测并跳过,就能显著提升使用效率与体验。GKD(“搞快点”之意)正是一个基于 Android 无障碍服务的自动点击框架,能够在各种应用界面实时匹配并触发“跳过”、“确认” 等按钮。


图:通过自动化点击,省去重复操作的等待时间(示例图来源:Pexels)


什么是 GKD

GKD 是一款开源的 Android 自动点击工具,特点如下:

  • 基于 Android 无障碍服务,可在任意应用前台运行;
  • 支持 自定义规则,通过“高级选择器”精准定位目标节点;
  • 提供 订阅机制,可远程更新规则库;
  • 内置 快照审查,协助开发者调试和编写规则;
  • 可执行包括点击、输入、快捷操作在内的多种自动化任务。

GKD 可看作知名工具“李跳跳”的升级版,功能更灵活、更易扩展。


核心原理:无障碍服务 + 自定义规则

3.1 无障碍服务简介

Android 无障碍服务(Accessibility Service)原本用于帮助视障用户操作系统和应用。GKD 利用该服务,能够:

  1. 监听界面变化:当 Activity 渲染完成或节点属性更新时,服务收到回调;
  2. 查询节点树:获取当前界面 XML tree,遍历所有可交互元素;
  3. 执行动作:对指定节点调用 performAction(Action.CLICK)Action.SCROLL 等操作;

这样,GKD 就能在任意应用中“代劳”点击跳过广告或确认按钮,无需 root 或应用内嵌。

3.2 高级选择器

与常见的 UI Automator 不同,GKD 的选择器语法既支持节点层级属性匹配,又可结合上下文关系。
示例:

@[vid="menu"] < [vid="menu_container"] - [vid="dot_text_layout"] > [text^="广告"]

含义解析:

  1. 找到 vid="menu"
  2. 向上查找父节点 vid="menu_container"
  3. 在该容器内,定位子节点 vid="dot_text_layout",且其文本以“广告”开头;
  4. 对此节点执行点击操作。

此类表达既简洁又强大,能应对复杂多层级的 UI 结构。

3.3 订阅规则

GKD 核心仅提供引擎,不内置任何规则。用户可:

  • 添加本地规则:在手机存储内直接编辑 .gkd 脚本;
  • 远程订阅:通过订阅链接,自动拉取最新规则;
  • 自建模板:使用 subscription-template 快速搭建自己的更新源。

第三方订阅列表可在 GitHub 上搜索 gkd-subscription 话题,一键订阅常用应用的自动跳过方案。

3.4 快照审查

调试规则时,GKD 提供快照审查功能:

  • 在指定界面截取节点树快照;
  • 在 Web 或本地工具中可视化查看节点属性、层级;
  • 编辑选择器后,实时验证匹配结果,确保规则生效。

快照审查项目地址:https://github.com/gkd-kit/inspect


安装与初次配置

  1. 下载 APK

    • 官方网站:https://gkd.li/

    • Google Play:

      https://play.google.com/store/apps/details?id=li.songe.gkd
      
    • GitHub Release:

      https://github.com/gkd-kit/gkd/releases
      
  2. 授予权限

    • 打开 “设置 → 无障碍 → GKD”
    • 启用无障碍服务,允许 GKD 读取屏幕内容并执行动作;
    • 根据需求,可授权“显示悬浮窗”以便手动快速启停。
  3. 导入规则

    • 在 GKD 应用内点击“订阅管理” → “添加订阅”
    • 粘贴远程订阅链接或加载本地规则文件。
  4. 测试生效

    • 打开带广告的应用,如视频播放器、新闻客户端;
    • 若规则命中,则可看到广告自动被跳过,无需手动操作。


图:GKD 在视频类应用中自动点击“跳过广告”按钮(示例图来源:Unsplash)


使用示例:自动跳过开屏广告与确认流程

示例 A:跳过视频广告

[@[text="跳过广告"], [text="Skip Ad"]] > perform_click
  • 匹配文本为“跳过广告”或“Skip Ad”的节点;
  • 统一执行 perform_click 操作。

示例 B:自动确认登录

@[text^="确定登录"] > perform_click
@[text^="Allow"], [text^="Permission"] > perform_click
  • 在映射电脑端扫码登录的确认框中,自动点击“确定登录”;
  • 针对英文版 App,也能匹配“Allow”或“Permission”。

编写与管理本地规则

  1. 在手机任意目录创建后缀为 .gkd 的文件,如 my_rules.gkd
  2. 使用文本编辑器添加或修改选择器脚本;
  3. 在 GKD 内 “本地规则 → 导入” 即可生效;
  4. 推荐将常用脚本组织为多文件,多模块化管理。
// my_rules.gkd
// 跳过开屏广告
[@[text^="广告"], [text^="Ad"]] > perform_click
// 自动确认权限
@[text="允许"], [text="Allow"] > perform_click

可通过 Git 同步规则文件,与团队共享。


搭建远程订阅源

若希望集中管理并自动分发规则,可按以下步骤:

  1. Fork subscription-template
  2. 在模板仓库中编辑 rules/ 目录下 .gkd 文件;
  3. 设定 GitHub Actions 自动发布新版本;
  4. 将仓库 Topics 添加 gkd-subscription,方便被其它用户检索;
  5. 发布发布页地址,即为订阅链接。

订阅链接示例:

https://raw.githubusercontent.com/你的账号/你的仓库/main/subscription.json

高级玩法:多条件联动和流程化操作

GKD 不仅能单击,还可执行:

  • 延时操作sleep(2000) 等待 2 秒后再点击;
  • 多节点级联:先滑动,再点击;
  • 输入文本:自动填充验证码、搜索关键词;
  • 流程脚本:实现一键完成“打开 App → 跳过广告 → 登录 → 进入主界面”全过程。
// 流程化示例
on_activity("com.example.app.SplashActivity") {
  @[text^="广告"] > perform_click
  sleep(1000)
}
on_activity("com.example.app.LoginActivity") {
  @[vid="login_btn"] > perform_click
}

常见问题与故障排查

  • 规则未生效?

    • 检查无障碍服务是否开启;
    • 使用快照审查确认选择器路径是否匹配当前版本 UI;
  • 误操作或误点?

    • 增加更严格的条件,如同时匹配文本与视图 ID;
    • 为关键操作添加 debug_mode,先在日志中预览替代点击;
  • 更新后规则失效?

    • 通过订阅重新拉取最新规则;
    • 本地缓存规则保留历史版本,需手动回滚。

结语

GKD 以灵活的规则引擎、强大的选择器语法和自动订阅机制,为 Android 用户和开发者提供了一套易用、高效的自动点击解决方案。无论是屏蔽恼人的开屏广告,还是简化重复的确认流程,都能大幅提升使用体验。

如果您对规则编写、订阅源搭建或调试技巧有更多疑问,欢迎加入社区交流、贡献规则。让我们一起打造更“快”的 Android 使用体验!

退出移动版