如何有效地检测 UI 文本输入以调用 google 地方 API 寻求建议?

How to detect UI text input effectively to call google places API for suggestions?

检测 UItextfield 中的用户输入以调用地方 API 以获取用户类型建议的最佳方法是什么?目前我的做法是,在输入 3 个字母后,我将每个字母输入的位置称为 API。但是如果用户输入 4 到 5 个字母非常快应用程序崩溃,可能是因为网络太多或其他原因。

以 google 地图应用或 google 搜索应用为例 ios。他们如何决定在什么时候调用 api 来显示建议结果?有时用户打字速度非常快,有时他们会一个字母一个字母地打字。

如果我的问题很愚蠢,请见谅。

参考Googlehttps://developers.google.com/places/ios-api/autocomplete这个选项。我没有尝试过,也许它可以提供帮助。

没有看到您的代码很难确定,但我怀疑崩溃是由 updating UI controls in non-UI threads.

引起的

如您所见,在用户键入时发出请求有一些微妙之处(发出太多请求、请求返回无序等)。考虑使用 Google Places iOS SDK 中的 GMSAutocompleteFetcher class,它会自动处理这些问题。