You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

macOS端点安全扩展长时间手动批准后didFinishWithResult回调未触发排查

关于OSSystemExtensionRequestDelegate回调异常的问题

我正在开发一款端点安全扩展加载器,实现了OSSystemExtensionRequestDelegate代理对象的多个回调方法,重点关注以下两个回调:

public func request(_ request: OSSystemExtensionRequest, 
                    didFinishWithResult result: OSSystemExtensionRequest.Result);

public func requestNeedsUserApproval(_ request: OSSystemExtensionRequest);

我遇到了以下异常现象:

  • 若在扩展激活后间隔很长时间再手动批准它,扩展进程会启动,但request(_:didFinishWithResult:)回调并未被调用,而requestNeedsUserApproval(_:)回调始终能正常触发。
  • 查看统一日志后发现状态流转的不同表现:
    • 当扩展状态从 activated_waiting_for_user -> activated_enabling -> activated_enabled 流转时,上述完成回调不会被触发;
    • 当扩展状态变为 activated_waiting_for_user -> activated_disabled 时,该回调却会被调用(这与预期不符,因为activated_disabled状态本应暗示激活失败)。

请问为何扩展在激活后长时间才被手动批准时,对应的完成回调不会被触发?

内容的提问来源于stack exchange,提问作者Zohar81

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 23:37:35