You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter应用集成Google Places API后无法加载搜索建议问题问询

问题解答

1. Google Places API 计费要求

使用Google Cloud Platform的Places API必须绑定有效的支付/计费账户才能正常调用。即使你还在免费额度使用范围内,Google也要求完成支付账户绑定验证,否则API请求会被直接拦截返回错误,不会返回搜索结果数据。
这是你目前加载结束后无搜索建议显示的最常见诱因。

2. 无搜索结果的其他排查方案

从你提供的代码来看,现有逻辑缺少错误捕获环节,API请求失败时会直接返回空列表进入加载完成状态,所以不会显示错误提示,只会看到加载指示器消失后无内容:

  • 先给你的PlacesRepo中getAutoComplete方法添加日志打印,查看API返回的原始数据,确认是否为403权限错误、空数据或者其他报错
  • 补充Bloc的异常捕获逻辑,修改_mapLoadAutoCompleteToState方法如下:
Stream<AutoCompleteState> _mapLoadAutoCompleteToState(LoadAutoComplete event) async* {
  _placesSubscription?.cancel();
  try {
    final List<PlacesAutoComplete> autocomplete =
        await _placesRepo.getAutoComplete(event.searchInput);
    yield AutoCompleteLoaded(autocomplete: autocomplete);
  } catch (e) {
    yield AutoCompleteError();
  }
}
  • 确认你GCP控制台的配置:
    • 项目已经启用Places API,而非仅启用地图相关SDK
    • 使用的API Key已经开通Places API调用权限
    • 若你配置了API Key的应用限制,需确认当前Flutter应用的包名、SHA1签名已经添加到允许列表中

内容的提问来源于stack exchange,提问作者user17043594

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 03:45:01