【问题标题】:Google Places API: PLACES_API_INVALID_APPGoogle 地方信息 API:PLACES_API_INVALID_APP
【发布时间】:2020-05-24 01:34:09
【问题描述】:

我有一个包含三个 productFlavors 和三个 buildTypes 的项目,并且对于每个生成的应用程序,“包”名称都是不同的。我的 gradle 文件如下所示:

productFlavors {
    flavor1 {
        applicationId "com.example.flavor1"
    }

    flavor2 {
        applicationId "com.example.flavor1"
    }

    flavor3 {
        applicationId "com.example.flavor1"
    }
}

buildTypes {
    debug {
        applicationIdSuffix ".dev"
        versionNameSuffix "-dev"
    }

    integration {
        applicationIdSuffix ".int"
        versionNameSuffix "-int"
    }

    release {

    }
}

我在 Google Developers Console 中使用包名称 com.example.flavor1.dev 注册了一个 API 密钥,并将该密钥添加到我的清单中,但是当我尝试使用该服务时,我收到消息 PLACES_API_INVALID_APP 的错误,所以我认为包名称一定有问题,但我不知道是什么。有人遇到过这样的问题吗?

谢谢!

【问题讨论】:

  • 请提供完整的 logcat 错误。包名很可能没有按照您的预期生成。
  • 这是 logcat 返回的内容:03-03 21:56:25.416 31735-31735/? E/Places:自动完成时出错:PLACES_API_INVALID_APP 03-03 21:56:25.536 30936-30936/com.example.flavor1.dev E/MyTag:PLACES_API_INVALID_APP
  • 你的 api 密钥中有那个确切的包吗?
  • 是的,我愿意。那是我在开发者控制台中输入的,但没有用。

标签: android google-places-api


【解决方案1】:

按照以下步骤操作: 1> 在 Google Developer Console 上创建一个新项目

2> API Manager > Credentials > New Credentials > API Key > Android Key > Press Create Button & Generate API KEY

在这里,无需应用应用程序包和 SHA 指纹即可创建密钥在任何应用程序中都有效

必须记住:

为 Android 启用 Google Places API

【讨论】:

  • 似乎删除 SHA1 并且包名称现在可以使用,但我仍然希望能够指定包名称并限制 API 密钥仅用于我的应用程序跨度>
【解决方案2】:

我通过使用新凭据创建新 API 密钥解决了这个问题。

【讨论】:

    猜你喜欢
    • 2017-12-18
    • 1970-01-01
    • 1970-01-01
    • 2015-10-02
    • 2020-11-29
    • 1970-01-01
    • 1970-01-01
    • 2018-04-06
    • 2013-02-25
    相关资源
    最近更新 更多