显示了PLACES_API_KEY_INVALID但似乎一切正常

时间:2016-08-07 03:32:23

标签: java android

我的应用使用Google Places API运行,但是当我使用行placeLikelihoods.getStatus().getStatusMessage()时,我收到消息PLACES_API_KEY_INVALID。我已经谷歌搜索了几天,无法找到解决方案。当我转到https://console.developers.google.com/apis/credentials?project=myprojectdebug并点击我的项目时,我被重定向到显示我的API密钥的页面,我创建它的日期以及我用来制作它的电子邮件。

这是我的清单

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="censored b/c its got some private stuff in name">

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<uses-permission android:name="android.permission.INTERNET" />

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
    <activity
        android:name=".MainActivity"
        android:label="@string/app_name"
        android:screenOrientation="portrait"
        android:theme="@style/AppTheme.NoActionBar">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <meta-data android:name="com.google.android.gms.version"
        android:value="@integer/google_play_services_version" />
    <meta-deta
        android:name="com.google.android.geo.API_KEY"
        android:value="My 39 character API key is here" />
</application>

我做错了什么?我想放弃,但我也想知道错误

编辑:发现问题然而我无法修复它。我没有使用此处显示的正确的keytool命令https://support.google.com/googleapi/answer/6158862,但是当我运行此命令时,它会给我一个错误,因为我的帐号名称在我的名字和姓氏之间有空格,这要归功于我使用的是Microsoft帐户。

3 个答案:

答案 0 :(得分:2)

好的,我收到了你的错误。你错过了元数据。检查你的标签,你写了'meta-deta'

答案 1 :(得分:2)

在我放置的清单文件中检查这个

android:name="com.google.android.maps.v2.API_KEY"

而不是这个(放在一个并检查拼写)

android:name="com.google.android.geo.API_KEY"
在您的AndroidManifest.xml文件中

,如

    <meta-data
        android:name="com.google.android.geo.API_KEY"
        android:value="@string/api_key"/>

答案 2 :(得分:0)

1)你启用/激活google place api吗?

Google Place Dev Console

2)你一直在换工作站吗?如果您使用另一台PC(而不是用于生成api密钥的原始PC)运行代码,则需要请求新的API密钥,因为调试密钥已更改。