如何有效检测 UI 文本输入以调用 google places API 以获取建议?
Posted
技术标签:
【中文标题】如何有效检测 UI 文本输入以调用 google places API 以获取建议?【英文标题】:How to detect UI text input effectively to call google places API for suggestions? 【发布时间】:2016-02-22 19:55:59 【问题描述】:在 UItextfield 中检测用户输入以调用位置 API 以作为用户类型的建议的最佳方法是什么?目前我的做法是,在 3 个字母之后,我为每个字母输入调用地点 API。但是如果用户输入 4 到 5 个字母,应用程序很快就会崩溃,可能是因为网络过多或其他原因。
以 ios 中的谷歌地图应用或谷歌搜索应用为例。他们如何决定在什么时候调用 api 来显示建议的结果?有时用户打字速度很快,有时他们一个字母一个字母地打字。
如果我的问题很愚蠢,请道歉。
【问题讨论】:
【参考方案1】:如果没有看到您的代码,很难确定,但我怀疑崩溃是由 updating UI controls in non-UI threads 引起的。
正如您所发现的,根据用户类型发出请求(发出过多请求、请求无序返回等)时会出现一些微妙的问题。考虑使用 Google Places iOS SDK 中的 GMSAutocompleteFetcher 类,它会自动处理这些问题。
【讨论】:
【参考方案2】:请参阅 Google https://developers.google.com/places/ios-api/autocomplete 提供的此选项。我还没有尝试过,也许它可以帮助。
【讨论】:
以上是关于如何有效检测 UI 文本输入以调用 google places API 以获取建议?的主要内容,如果未能解决你的问题,请参考以下文章