capture.ended event
权限撤销、设备断开、应用停止或不可恢复错误使采集结束时发送一次。
Event payload
{
handle,
reason: "stopped" | "permission-revoked" | "device-lost" | "background-policy" | "error"
}
Examples
host.events.on('capture.ended', ({ handle, reason }) => {
detachStream(handle);
if (reason !== 'stopped') showCaptureEnded(reason);
});
事件送达时句柄已经失效,后续读取必须失败。
Delivery rules
- 应用声明本事件时,每个成功创建的采集句柄恰好发送一次
ended。 stopped只表示本应用调用了stop;权限撤销和设备丢失必须保留各自原因。- 终止后不得再完成先前挂起的读取;它们以
stale-handle失败。
Requirements
- 事件声明:
capture.ended - 来源:camera-stream 或 microphone-stream 句柄
- 信任档位:继承创建句柄的 yellow