Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用谷歌API密钥的URL缩短器_Java_Android - Fatal编程技术网

Java 使用谷歌API密钥的URL缩短器

Java 使用谷歌API密钥的URL缩短器,java,android,Java,Android,我正在使用此代码来缩短我的长Url。我做错了什么 Urlshortener.Builder builder = new Urlshortener.Builder (AndroidHttp.newCompatibleTransport(), AndroidJsonFactory.getDefaultInstance(), null); Urlshortener urlshortener = builder.build(); com.google.api.services.urls

我正在使用此代码来缩短我的长Url。我做错了什么

Urlshortener.Builder builder = new Urlshortener.Builder (AndroidHttp.newCompatibleTransport(),
        AndroidJsonFactory.getDefaultInstance(), null);
Urlshortener urlshortener = builder.build();

com.google.api.services.urlshortener.model.Url url = new com.google.api.services.urlshortener.model.Url();
url.setLongUrl(longUrl);
try {
    Urlshortener.Url.Insert insert=urlshortener.url().insert(url);
    insert.setKey(key);
    url = insert.execute();
    return url.getId();
} catch (IOException e) {
    return null;
}
但这给了我一个例外

com.google.api.client.googleapis.json.GoogleJsonResponseException: 403 Forbidden
{
"code": 403,
"errors": [
{
  "domain": "usageLimits",
  "message": "The Android package name and signing-certificate fingerprint, null and null, do not match the app restrictions configured on your API key. Please use the API Console to update your key restrictions.",
  "reason": "ipRefererBlocked",
  "extendedHelp": "https://console.developers.google.com/apis/credentials?project=796104768654"
}
],
"message": "The Android package name and signing-certificate fingerprint, null and null, do not match the app restrictions configured on your API key. Please use the API Console to update your key restrictions."
}

看起来您已在开发中打包应用程序(未签名)。要在android中使用此api,您必须在api控制台中注册您的android应用程序将使用的密钥

来自谷歌:
如果您的应用程序直接从Android(而不是从web服务器)访问API,那么要在控制台中注册数字签名的.apk文件的公共证书,您需要您的Android软件包名称和SHA-1指纹。

看起来您已经在开发中打包了应用程序(未签名)。要在android中使用此api,您必须在api控制台中注册您的android应用程序将使用的密钥

来自谷歌:
如果您的应用程序直接从Android访问API(而不是从web服务器),那么要在控制台中注册数字签名的.apk文件的公共证书,您需要您的Android软件包名称和SHA-1指纹。

我添加了我的密钥。。并在谷歌控制台中添加了包名和SHA-1指纹。仍然给我错误,但似乎根据错误,你没有签署你的测试apk。您是否导出了签名包?或者运行调试我添加了我的密钥。。并在谷歌控制台中添加了包名和SHA-1指纹。仍然给我错误,但似乎根据错误,你没有签署你的测试apk。您是否导出了签名包?或者运行调试