2013-08-16 4 views
1

После много исследований, чтобы решить мою проблему, я должен спросить. Все настроено, но карта не будет отображаться. Ошибка:Android - Google maps Api v2 - Ошибка аутентификации

08-16 20:31:49.473: E/Google Maps Android API(10864): Failed to load map. Error contacting Google servers. This is probably an authentication issue (but could be due to network errors). 

Я бегу карты на режим отладки (я также пытался путем установки .apk на устройство и запустить его) и то же самое не происходит - нет карты.

  • Я проверил ключ API

Manifest

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    ... > 

    <permission 
     android:name="com.my_package_name.permission.MAPS_RECEIVE" 
     android:protectionLevel="signature" /> 

    <uses-feature 
     android:glEsVersion="0x00020000" 
     android:required="true" /> 

    <uses-permission android:name="com.my_package_name.permission.MAPS_RECEIVE" /> 
    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
    <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_COARSE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 

    <application 
     ... > 
     <meta-data 
      android:name="com.google.android.maps.v2.API_KEY" 
      android:value="AIzaSyCEH*************************" /> 
    </application> 
</manifest> 

активность

общественного класса Home расширяет активность {

static final LatLng HAMBURG = new LatLng(53.558, 9.927); 
static final LatLng KIEL = new LatLng(53.551, 9.993); 
private GoogleMap map; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.home); 

    map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap(); 
    } 
} 
+0

В консоли Google Api необходимо настроить биллинг для аутентификации ключа Api? –

+0

Нет, выставление счетов не требуется. – Namenlos

+0

В консоли Api, какие службы необходимо активировать для Android Google Maps v2? Я что-то сделал, и карты начали работать, а затем снова ушли. Я думаю, что Сервисы связаны с этим. –

ответ

1

Активизировать эти услуги в консоли Google:

  • API v2 Google Maps для Android

Затем воссоздать ключ API и Карты должны работать - они сделали для меня.

+1

Вам нужен только первый, «Google Maps Android API v2». – Namenlos

+0

Любая удача? Я столкнулся с той же проблемой, с белым холстом. Воссоздал API-ключ, последовали ответы на stackoverflow, но не повезло .. – Diego

+0

@ Diego Для меня это был «Google Maps Android API v2» «Услуги», который нужно было активировать. Я активировал его, затем воссоздал двойную API и тройную проверку ключа SHA1 и имени пакета. Затем активировал мое приложение, и это сработало. Перед повторным запуском убедитесь, что вы полностью удалили приложение. Это гарантирует отсутствие сбоев или мусора. Дайте мне знать, как это происходит. Я помогу, насколько смогу. –

1

Это вопрос аутентификации, скорее всего, вы неправильно настроили свой ключ API, используя свой отпечаток SHA1.

Посмотрите на this

+0

SHA1 правильный, и это также пакет. Это консоль Google. Требуется время и порядок активации службы и создание ключа API влияет на нее. Правильный порядок: активируйте соответствующую службу, затем создайте API, затем запустите приложение. Это сработало для меня. –

1

Положите это в свой манифест.

<meta-data android:name="com.google.android.gms.version" 
     android:value="@integer/google_play_services_version"></meta-data> 

Также проверьте, что согласие экрана (на консоли Google Developer Сайт> Настройки) имеет свой адрес электронной почты и название продукта.