API 总览
约 1630 字大约 5 分钟
API 总览
这一部分现在按“对象”和“功能组”拆页。
左侧栏已经能直接展开到每个 API 小节,所以这个入口页不再重复铺一整套目录,而是只告诉你怎么读、去哪里速查、每类内容放在哪。
怎么用这部分
你可以先按下面这个思路用:
- 第一次接触 ScriptX,先看 运行时与 Hook。
- 要开工作线程、做同步、在线程里挂定时器,去 threads 线程与同步。
- 要做自定义事件、广播、按键、Toast、通知、触摸监听,去 events 事件与观察器。
- 要做无障碍选择器、控件树、前台应用判断,去 automator 自动化操作-模块。
- 要做虚拟屏创建、预览、截图、输入,以及把其他 API 指到指定显示器,去 vdisplay 虚拟屏。
- 要做屏幕点击、长按、滑动,去 coordinates 自动化操作-坐标。
- 要做返回、回桌面、通知栏、
KeyCode、文本注入,去 keys 按键模拟。 - 要做脚本弹窗、输入框、选择框、可编排对话框实例,去 dialogs 对话框。
- 要做屏幕截图、图像处理、找色、模板匹配,去 images 图像与截图。
- 要做位图绘制、
Paint / Path / Rect / Matrix、画布变换,去 canvas 画布。 - 要做颜色解析、通道拆分、颜色常量,去 colors 颜色模块。
- 要做脚本页面、XML 布局、列表、分页、画布视图和自定义控件,去 ui 用户界面。
- 要做系统悬浮窗,去 floaty 悬浮窗。
- 要做
console风格日志输出和悬浮日志窗口控制,去 console 控制台。 - 要做格式化、类型判断和 Java 桥接辅助,去 util 工具模块。
- 要读写 ScriptX 当前公开的运行时开关,去 settings 设置。
- 要把项目脚本拆模块、写
require(...)、理解exports/module.exports,去 module 模块。 - 要做传感器监听、多媒体播放或多脚本引擎调度,去 sensors 传感器、media 多媒体、engines 脚本引擎。
- 要做类查找、字段读写、调用 Java 方法,去 反射与类操作。
- 要做 DexKit 静态检索、类/方法/字段定位、结果对象回转,去 DexKit 静态检索。
- 要做电池优化白名单判断和拉起系统授权页,去 power_manager 电源管理。
- 要找某个具体对象或方法,直接用左侧栏,或者去 API 速查。
- 只有当你准备认真用某个对象时,再进它自己的专页看详细参数、默认值和失败行为。
这里和速查页怎么分工
为了避免重复,这里现在按下面的方式分工:
- 入口页:只负责说明“怎么读这部分文档”。
- API 速查:负责一页看全局函数、全局对象和源码映射。
- 具体 API 正文页:只在对应页面里保留完整参数、取值、返回值、示例和边界行为。
也就是说,如果你看到某个对象已经有独立正文页,这个入口页就不再把它的方法列表重新抄一遍。
文档约定
- 会尽量按
对象.方法(参数)的形式建章节。 - 别名尽量并到主方法,不再单独造重复小节。
- 左侧导航已经承担目录作用,所以正文页里的重复目录块已去掉。
- 说明以当前源码实现为准,不按旧记忆补。
先从哪几页开始最省时间
- 想确认脚本环境、Hook 生命周期、
lpparam、context:看 运行时与 Hook - 想开工作线程、做跨线程传值、挂线程内定时器、做锁同步:看 threads 线程与同步
- 想做脚本内部事件总线、同包广播、按键/Toast/通知/触摸监听:看 events 事件与观察器
- 想做无障碍自动化、选择器、
UiObject、前台页面识别:看 automator 自动化操作-模块 - 想做虚拟屏创建、预览、跨显示器输入和跨模块 target 传递:看 vdisplay 虚拟屏
- 想做点击、长按、按压、滑动这类坐标动作:看 coordinates 自动化操作-坐标
- 想做返回、回桌面、通知栏、最近任务、分屏、
KeyCode派发:看 keys 按键模拟 - 想做提示框、确认框、输入框、列表选择框、可编排对话框:看 dialogs 对话框
- 想做屏幕截图、读图存图、找色、模板匹配、简单图像分析:看 images 图像与截图
- 想做位图画布、
Paint、Path、Rect、Matrix、绘制与变换:看 canvas 画布 - 想把颜色字符串、数字颜色、数组颜色互相转换,或直接拿通道值:看 colors 颜色模块
- 想做脚本页面、动态插入控件、列表、分页、自定义 Widget、UI 事件:看 ui 用户界面
- 想做系统悬浮窗、可调窗口、悬浮工具面板:看 floaty 悬浮窗
- 想做
console.log(...)风格日志、悬浮日志窗口、脚本调试输出:看 console 控制台 - 想做格式化、对象检查、Java 数组 / Map / JS 对象互转:看 util 工具模块
- 想读写 ScriptX 当前公开的运行时开关:看 settings 设置
- 想把项目拆成多个脚本文件、用
require(...)组织模块:看 module 模块 - 想做传感器监听、音频播放、脚本拉起脚本:看 sensors 传感器、media 多媒体、engines 脚本引擎
- 想做反射、调用 Java、读写字段:看 反射与类操作
- 想做 DexKit 查类、查方法、查字段、批量字符串分组:看 DexKit 静态检索
- 想做文件、存储、设备控制、电池优化白名单:看 files 文件系统、storages 持久化存储、device 设备能力、power_manager 电源管理
- 想做网络、HTTP 服务、MCP:看 http HTTP 客户端、httpServer HTTP 服务、mcpServer MCP 服务
- 想做运行时面板:看 imgui 运行时面板
- 想先知道“有没有这个 API”:先翻 API 速查
API 总览 来源
这批页面主要整理自下面这些源码:
hook/javascript/JavaScriptBridge.kthook/javascript/ScriptAutomatorApi.kthook/javascript/ScriptVDisplayApi.kthook/javascript/ScriptThreadsApi.kthook/javascript/ScriptEventsApi.kthook/javascript/ScriptKeysApi.kthook/javascript/ScriptDialogsApi.kthook/javascript/ScriptImagesApi.kthook/javascript/ScriptCanvasApi.kthook/javascript/ScriptColorsApi.kthook/javascript/ScriptPowerManagerApi.ktcore/display/ScriptVirtualDisplayManager.kthook/javascript/JavaScriptRuntime.kthook/javascript/JavaScriptCrypto.kthook/javascript/ScriptFilesApi.kthook/javascript/ScriptStoragesApi.kthook/javascript/ScriptDeviceApi.kthook/javascript/ScriptPluginsApi.kthook/javascript/ScriptImGuiApi.kthook/javascript/McpServerBridge.ktui/manual/Manual.kt
如果后面你继续扩 API,优先补这些文件对应的专页,不要再往入口页堆方法清单,这样整套结构会干净很多。
