首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >找不到Google V2 API密钥(但它在那里)

找不到Google V2 API密钥(但它在那里)
EN

Stack Overflow用户
提问于 2015-05-04 16:19:53
回答 2查看 1.7K关注 0票数 0

我正在尝试将一个现有的、正在工作的Google应用程序从API V1移植到V2。我在developers.google.com上一丝不苟地遵循方向,但仍然没有joy。问题是,根据LogCat的说法,"API密钥找不到“。LogCat输出如下:

代码语言:javascript
复制
05-04 11:46:55.882: E/AndroidRuntime(15175): Caused by:ava.lang.RuntimeException: API key not found. Check that <meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="your API key"/>
                is in the <application> element of AndroidManifest.xml
05-04 11:46:55.882: E/AndroidRuntime(15175):    at com.google.maps.api.android.lib6.d.fb.a(Unknown Source)
05-04 11:46:55.882: E/AndroidRuntime(15175):    at com.google.maps.api.android.lib6.a.g.a(Unknown Source)
05-04 11:46:55.882: E/AndroidRuntime(15175):    at com.google.android.gms.maps.internal.CreatorImpl.b(Unknown Source)
05-04 11:46:55.882: E/AndroidRuntime(15175):    at com.google.android.gms.maps.internal.CreatorImpl.b(Unknown Source)
05-04 11:46:55.882: E/AndroidRuntime(15175):    at com.google.android.gms.maps.internal.i.onTransact(SourceFile:62)
05-04 11:46:55.882: E/AndroidRuntime(15175):    at android.os.Binder.transact(Binder.java:380)
05-04 11:46:55.882: E/AndroidRuntime(15175):    at com.google.android.gms.maps.internal.zzc$zza$zza.zzk(Unknown Source)
05-04 11:46:55.882: E/AndroidRuntime(15175):    at com.google.android.gms.maps.MapFragment$zzb.zztD(Unknown Source)
05-04 11:46:55.882: E/AndroidRuntime(15175):    at com.google.android.gms.maps.MapFragment$zzb.zza(Unknown Source)
05-04 11:46:55.882: E/AndroidRuntime(15175):    at com.google.android.gms.dynamic.zza.zza(Unknown Source)
05-04 11:46:55.882: E/AndroidRuntime(15175):    at com.google.android.gms.dynamic.zza.onInflate(Unknown Source)
05-04 11:46:55.882: E/AndroidRuntime(15175):    at com.google.android.gms.maps.MapFragment.onInflate(Unknown Source)
05-04 11:46:55.882: E/AndroidRuntime(15175):    at android.app.FragmentManagerImpl.onCreateView(FragmentManager.java:2130)
05-04 11:46:55.882: E/AndroidRuntime(15175):    at android.app.Activity.onCreateView(Activity.java:5610)
05-04 11:46:55.882: E/AndroidRuntime(15175):    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:740)
05-04 11:46:55.882: E/AndroidRuntime(15175):    ... 19 more

但是在那里是:我的声明在下面(这篇文章的API密钥被肢解了):

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="com.ramrod.GoogleMapV2"
  android:versionCode="100"
  android:versionName="1.00">

<uses-sdk
    android:minSdkVersion="17"
    android:targetSdkVersion="17"
/>
<uses-feature 
    android:glEsVersion="0x0020000"
    android:required="true"
/>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFU_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"   />
<uses-permission android:name="android.permission.READ_GSERVICES"   />
<uses-permission android:name="android.permission.MAPS_RECEIVE"   />

<application
  android:icon="@drawable/icon"
  android:label="GoogleMapV2"
  android:allowBackup="false">
  <activity android:name=".GoogleMapV2Main"
            android:label="GoogleMapV2">
      <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-data
      android:name="com.google.android.maps.V2.API_KEY"
      android:value="AIzaSyC0T6B0VEcEALyQi3WXXXXXXXXXXXXXXXX"
  />
</application>
</manifest>

在没有joy的情况下,我已经靠在墙上打了将近一个星期了。我搜索过StackOverflow和web:很多人都有API的关键问题,但是语法问题几乎是普遍存在的。除非我看不见XML,否则我不认为这是我的问题。

有人看到我遗漏的东西了吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-05-04 17:07:02

我不知道这是否是主要原因,但你

代码语言:javascript
复制
<meta-data android:name="com.google.android.maps.V2.API_KEY" android:value="your API key"/>

其中V2与上V,而logcat则表示将其与较低的v放在一起。

代码语言:javascript
复制
 <meta-data android:name="com.google.android.maps.v2.API_KEY"
  android:value="AIzaSyC0T6B0VEcEALyQi3WXXXXXXXXXXXXXXXX" />
票数 3
EN

Stack Overflow用户

发布于 2015-05-04 16:29:33

您有两种类型的键,一种用于调试会话,另一种用于发布apks。

对于,您可以在Eclipse中获得SHA1值。

从菜单访问: Window -> Preferences -> Android -> Build

可能您使用了错误的SHA1值。

尝试将值直接放入清单中。不要使用@整数..。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30034896

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档