我有一个 iOS 应用程序,它定期将记录插入 Azure 移动服务数据库。当应用程序变为非活动状态时(即,当我的应用程序委托的 applicationWillResignActive 方法被调用时)我想插入一条记录来告诉我的 AMS 应用程序客户端会话已经结束。
当我尝试从 applicationWillResignActive 或 applicationDidEnterBackground 插入记录时,永远不会到达完成块。为了防止应用程序委托方法在 AMS 插入完成之前返回,我尝试调用 usleep 以在循环中延迟 100 毫秒,同时检查我在插入完成块中设置的标志。
我怀疑当我处于这种状态时,AMS 客户端库所需的运行循环或操作队列没有得到服务,但 AMS 客户端库文档没有足够的细节来判断是否是这种情况。
这似乎是一个很常见的情况——还有其他人遇到过这种情况吗?