事件监听 (Selector.on_event)
Selector.on_event
声明
Selector.on_event(listener)
参数
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
| listener | function | 是 | 回调函数,接收一个 event 参数 |
说明
监听设备的各种无障碍事件,包括窗口事件、视图事件、通知宣告事件、触摸和手势事件等。
待实现
该接口正在开发中。仅支持无障碍模式下使用。
示例
local node = require("node")
-- 事件回调函数
local function on_event(event)
local event_type = event:getEventType()
-- 监听 Toast 信息
if event_type == AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED then
local packageName = event:getPackageName()
local text = event:getText()
if text and #text > 0 then
local message = text[1]
print("Toast 通知:", packageName, message)
end
end
end
-- 开始监听无障碍事件
Selector.on_event(on_event)
AScript 对应
# AScript (Python)
from ascript.android.node import Selector
from android.view.accessibility import AccessibilityEvent
def on_event(event):
e_tp = event.getEventType()
if e_tp == AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED:
packageName = event.getPackageName()
message = ""
if event.getText() is not None and event.getText().size() > 0:
message = event.getText().get(0)
print("来toast通知了", packageName, message)
Selector.on_event(on_event)