当 NEPacketTunnelProvider 处于活动状态时,信号无法完全工作

问题描述

我已经实现了运行良好的 NEPacketTunnelProvider,但是当隧道处于活动状态时,某些应用程序(即 Signal)无法正常工作。我的消息已发送(已与朋友确认),但我没有看到已读回执,也没有收到消息。

Signal 提供获取日志的选项。

? [OWSWebSocket.m:731 -[OWSWebSocket websocketDiddisconnectWithSocket:error:]]: Websocket did fail with error: Error Domain=kcfErrorDomainCFNetwork Code=2 "(null)" UserInfo={_kcfStreamErrorDomainKey=12,_kcfStreamErrorCodeKey=8,kCfgetAddrInfoFailureKey=8}

这是我能看到的常见错误之一,但代码非常通用。应该是这样的 - https://developer.apple.com/documentation/cfnetwork/cfnetworkerrors/cfhosterrorunknown

然后是其他一些错误

❤️ [MessageSender.m:288 -[OWSSendMessageOperation didFailWithError:]]: Failed with error: SignalServiceKit.MessageSenderError (isRetryable: 0)
2021/04/20 12:10:08:998  
❤️ [OWSOutgoingReceiptManager.m:240 -[OWSOutgoingReceiptManager sendReceiptsForReceiptType:]_block_invoke]: Failed to send Read receipts to sender with error: SignalServiceKit.MessageSenderError

我还检查了 Signal 源代码 (https://github.com/signalapp/Signal-iOS/blob/master/SignalServiceKit/src/Messages/OWSOutgoingReceiptManager.m) 但这没有帮助。

当我的隧道处于活动状态时,有没有办法精确调试哪些不起作用?我手机上的其他应用运行良好。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)