2014-12-24 3 views
0

У меня проблемы с картами google, у меня есть работа с ключом отладки, но при попытке версии выпуска я получаю пустой экран вместо карты. Я выполнил инструкции и подписал ключ выпуска.Релиз доступа к API Карт Google

C:\Program Files\Java\jre1.8.0_25\bin>keytool 
-list -v -keystore C:\DecSurfApp\key.jks 

дает мне этот ключ:

SHA1: B6:1F:24:AB:##:8A:C9:EF:C9:##:##:##:##:##:##:##:##:##:##:## 

Что я использовал для создания ключа API

B6:1F:24:AB:##:8A:C9:EF:C9:##:##:##:##:##:##:##:##:##:##:##; 
com.nitinarya.surfalarmclockrelease 

Что я делаю неправильно?

Edit: Добавлено AndridManifest.xml

<?xml version="1.0" encoding="utf-8"?> 

<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" /> 
<!-- 
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" /> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 

<application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" > 
    <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="com.nitinarya.surfalarmclockrelease.MapsActivity" 
     android:label="@string/title_activity_maps" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
</application> 

google_maps_api.xml

<resources> 
<string name="google_maps_key_instructions" templateMergeStrategy="replace"><!-- 




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">####################3PvXCg</string> 

+0

опубликовать файл манифеста ... –

ответ

1

Я думаю, что есть проблема с неправильным Google API ключом. Поэтому вам нужно использовать отпечаток SHA, пока вы собираетесь опубликовать свое приложение.

Например, после окончательного развертывания приложения вы можете найти отпечаток пальца SHA, пока вы закончите (сгенерируйте apk), так что используйте SHA отпечаток пальца и сгенерируйте ключ карты google и добавьте его в файл манифеста и запустить один раз. После этого просто отпустите свой apk и разверните его. Он покажет вам карту google.

ПРИМЕЧАНИЕ: Также проверьте, что вы добавили всю необходимую информацию в файл Androidmanifest.xml.

+0

Я использовал отпечаток SHA1 для создания ключа карты google – Nitin

+0

Его режим отладки. Вам нужно использовать SHA в режиме деблокирования. – RockStar

+0

Это сработало !!! : D Я клал ключ освобождения в google_maps_api.xml (debug). Спасибо RockStar :) Я застрял на этом несколько дней и сдался. – Nitin