我目前正在我的应用程序的主视图上使用 .subscriptionStatusTask。到目前为止,我在 Xcode 中进行的测试似乎一切都运行良好。然而,当我将其弹出到 TestFlight 时,我注意到在我“购买”订阅和 .subscriptionStatusTask 在注意到更改后启动之间出现了一些“滞后”。换句话说,我的应用程序需要几秒钟的时间才能知道它是“专业版”而不是初始的非订阅版本(我设置了一个已发布的变量来指示专业版或非专业版)。所以我的问题是:
想法?有建议吗?
我决定使用 async/await 并调用两个函数...一个用于完成大部分工作以检查哪个订阅处于活动状态(或没有),另一个用于重置 ProgressView 的标志。当 ProgressView 处于活动状态且框架为 maxWidth/maxHeight 为 .infinity 且背景为 .white.opacity(0.25) 时,我在主视图上使用了 .overlay。目前,这似乎对我有用。根据我的逻辑,如果用户没有网络连接并想要离线工作,我可能还必须考虑如何工作。不过,如果我遇到麻烦,那是另一篇文章了。我仍然不知道为什么 .subscriptionStatusTask 存在如此大的滞后,但我想我应该发布我所做的事情,以防其他人试图为其代码找到解决方法。