session.isReachable 在 watchos 的后台总是 false

session.isReachable always false in background in watchos

我正在使用 WCSession 委托方法在后台使用手表应用程序。

在前台一切正常,但是当我将应用程序置于后台时它没有响应,之后当我回到前台时会自动调用委托并执行任务。

花了很长时间来解决这个问题,然后当我将应用程序置于后台时我发现它会将 isReachable 标志更改为 false。

所以问题是,当应用程序处于后台时,我如何才能使 isReachable 标志保持为真?

我只想在 Reachability Change 时得到它,然后我想在后台和前台回调“sessionReachabilityDidChange(_ session: WCSession)”方法。

但正如我所说,isReachable 标志为假,这就是为什么不调用 sessionReachabilityDidChange 方法的原因。

提前致谢...!

关于标志何时为真或假的文档非常清楚https://developer.apple.com/documentation/watchconnectivity/wcsession/1615683-isreachable

您无法更改它,除非您“运行 在后台具有高优先级(例如,在锻炼期间)”