Ios GMSAutocompleteViewController仅显示5个结果

Ios GMSAutocompleteViewController仅显示5个结果,ios,swift,google-maps,google-places,Ios,Swift,Google Maps,Google Places,我在我的应用程序中集成了GMSAutocompleteViewController let autocompleteController = GMSAutocompleteViewController() autocompleteController.delegate = self let filter = GMSAutocompleteFilter() filter.type = .address autocompleteController.autocompleteFilter = filt

我在我的应用程序中集成了GMSAutocompleteViewController

let autocompleteController = GMSAutocompleteViewController()
autocompleteController.delegate = self
let filter = GMSAutocompleteFilter()
filter.type = .address
autocompleteController.autocompleteFilter = filter

// Display the autocomplete view controller.
present(autocompleteController, animated: true, completion: nil)    
这始终只显示5个结果。而且,这种行为似乎有点怪异。首先,当我在搜索中写入J时,会显示5个结果。在写入更多文本并删除这些文本以再次将搜索文本设置为J后,我得到-无法加载结果。然后,除非我重新启动我的应用程序,否则不会显示结果。

我在Android中使用
AutocompleteSupportFragment
尝试了相同的实现,效果非常好。早些时候,我在看了之后感到疑惑,其他人也很少但是如果启用计费是解决方案,为什么在Android中不启用计费就可以正常工作呢?

我假设您启用了Google Places API,并且您的Google开发者控制台下没有针对该项目的应用程序限制。说有一个关于谷歌的页面

  • Android和iOS Places API可能不同,因此对于某些API,您可能需要启用计费:

    一些API允许免费使用,但不超过礼节性使用限制,在某些情况下 如果启用计费,则此免费限制将增加

  • 可能在Android应用程序中,您使用的API链接到已启用计费的项目,而在iOS应用程序中,您使用的API链接到未启用计费的另一个项目

    计费是在项目级别启用的,而不是API级别。如果你 为项目启用计费,然后为该项目中的每个可计费API启用计费 根据项目的使用情况进行计费。项目中的所有用法都是 使用您指定的付款方式计费,您可以更改 随时使用不同的方法。您不能有选择地启用 为某些API而非其他API计费;当您为一个项目启用计费时 它适用于您在该项目中使用的所有API, 即使API当前已禁用

  • 也许有些东西与您在Android应用程序项目中使用的PlacesSDK版本有关,如果您要与需要启用或不启用计费的更新API版本交谈,它的一些内部功能可能会产生影响。检查本假设中所述的信息


    最后,正如Google在Places SDK for Android、Places SDK for iOS、Places API中的大量文档中所述,它们在每篇文章的开头都有一个红色警告,表示在每个项目中都应该启用计费。如果我所有的before语句都失败了,这可能意味着他们在不同批次的用户/项目中应用了计费规则和API功能限制,因此您的android应用程序项目可能已经落在了一个尚未推出强制启用计费选项的批次中。

    我遇到了类似的问题。正在尝试从Google实现新的PlacesAPI,以取代旧SDK的PlacesPicker。每天打一两次成功的电话后,我总是会出现以下错误:

    发生错误:操作无法完成。活动 由于超出配额使用限制而失败。请参阅使用限制 指南( 有关使用限制以及如何请求更高限制的信息

    我在控制台中启用了PlacesAPI,还启用了使用有效信用卡进行计费。我仍然收到这个错误


    解决方案是从谷歌云平台启用iOS地图SDK。在那之后,我对请求没有限制,每次都能得到结果。希望这对其他人有所帮助。

    Google Places API只提供5个搜索结果。请参考以下链接:@BhavikModi:请仔细阅读我的完整问题。在Android中,没有这样的限制。