在将Google v2集成到我的应用程序中时,我遇到了麻烦。
我在用安卓工作室。我创建了一个新的映射活动,并遵循了google_maps_api.xml
中的说明
<resources>
<string name="google_maps_key_instructions">
<!--
TODO: Before you run your application, you need a Google Maps API key.
To get one, follow this link, follow the directions and press "Create" at the end:
https://console.developers.google.com/flows/enableapi?apiid=maps_android_backend&keyType=CLIENT_SIDE_ANDROID&r=XXXXhashXXX%3Bat.schickermueller.taxameter.activity
You can also add your credentials to an existing key, using this line:
XXXXhashXXX;at.schickermueller.taxameter.activity
Once you have your key (it starts with "AIza"), replace the "google_maps_key"
string in this file.
-->
</string>
<string name="google_maps_key" templateMergeStrategy="preserve">AIzaXXXXXXXXXXXXXXXXXXXXX</string>
</resources>
我还激活了Android v2 API:
但是该活动显示了一个空白地图,并且出现了以下错误:
08-23 12:30:45.845 11659-11829/at.schickermueller.taxameterE/Google:未能加载地图。与Google服务器联系时出错。这可能是身份验证问题(但可能是由于网络错误)。
我已经尝试过在堆栈溢出线程中发布的一些“解决方案”(比如Android - Google maps Api v2 - Authentication error)。
我的清单有以下内容:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="at.schickermueller.taxameter" >
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".activity.StartActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<service
android:name=".service.TrackService"
android:enabled="true"
android:exported="true" >
</service>
<activity
android:name=".activity.DriveListActivity"
android:label="@string/title_activity_drive_list" >
</activity>
<activity
android:name=".activity.DriveDetailActivity"
android:label="@string/title_activity_drive_detail"
android:theme="@style/Theme.AppCompat" >
</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="@string/google_maps_key" />
<activity
android:name=".activity.MapsActivity2"
android:label="@string/title_activity_maps_activity2" >
</activity>
</application>
<permission
android:name="at.schickermueller.taxameter.permission.MAPS_RECEIVE"
android:protectionLevel="signature" />
<uses-feature
android:glEsVersion="0x00020000"
android:required="true" />
<uses-permission android:name="at.schickermueller.taxameter.activity.permission.MAPS_RECEIVE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<!--
The ACCESS_COARSE/FINE_LOCATION permissions are not required to use
Google Maps Android API v2, but are recommended.
-->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
</manifest>
我希望你能帮我
发布于 2014-11-09 18:43:29
确保您已经注册了您的SH1密钥,并且您在API控制台中的包名'at.schickermueller.taxameter‘与您的API键相对应。或者使用所有设备都可用的API密钥。
https://stackoverflow.com/questions/25461085
复制相似问题