使用 google 时错误 "Status{statusCode=PLACES_API_INVALID_APP, resolution=null}" 将 api 放入 android

Error "Status{statusCode=PLACES_API_INVALID_APP, resolution=null}" when using google places api in android

我在我的 android 应用程序中使用 google 地图,并且地图已成功加载到我的应用程序中。 我使用以下代码在我的应用程序中初始化 google 地图:

mGoogleApiClient = new GoogleApiClient.Builder(this)
                .addConnectionCallbacks(this)
                .addOnConnectionFailedListener(this)
                .addApi(Places.GEO_DATA_API)
                .addApi(Places.PLACE_DETECTION_API)
                .addApi(LocationServices.API)
                .enableAutoManage(this, this)
                .build();

google places api 对我来说效果很好,但是今天使用 place auto complete 时发生错误! 这是第一次出现此错误:

Status{statusCode=PLACES_API_INVALID_APP, resolution=null}

我使用了正确的 api 密钥并且我的所有代码都是正确的,因为它一直有效到今天。 但是突然出现了这个错误。 请帮助我 :) 提前致谢

该错误表明您的设置有问题 API - 包名称或签名有误。如果您没有更改代码,最有可能的错误是您使用不同的密钥对应用程序进行了签名。如果你--

1) 从调试模式更改为发布模式,或者

2) 在不同的计算机上编译或在调试模式下安装 AS

那么您可能必须向 API 密钥添加另一个 SHA-1 指纹。按照此处获取 SHA-1 指纹的说明进行操作 -- https://developers.google.com/places/android-api/signup。检查 API 控制台以确保您已添加所有必要的密钥。

如果您在生成 api 密钥后更改了系统,则必须在 google api 控制台中更新当前系统 SHA 密钥。

在我的例子中,错误是因为我输入了

<meta-data
      android:name="com.google.android.geo.API_KEY"
      android:value="{MY_KEY}"/>

Application 标签之外。添加里面的Application标签后全部开始工作

如果此处列出的所有内容都没有帮助 - 尝试在 google api 控制台中设置为 no restrictions,它对我有帮助

如果您在 Google 播放控制台上发布应用程序时遇到问题。

Release mangement > app signing > App signing certificate SHA1

您的应用 public 证书已更改为新证书。

让我们先检查一下。