2012-05-12 2 views
0

Я пытаюсь работать с картами google. Он не отображает карту. Я получаю следующее сообщение об ошибке в LogCatGoogle MapActivity не отображает карту

Couldn't get connection factory client 

Я через все дублированных сообщений, и сделал следующие изменения

  • ОБЕСПЕЧИЛИ, который использует-разрешения и использует библиотека внутри тега
  • используется debug.keystore вместо custom
  • зарегистрировался с помощью Google Maps с помощью моего личного ключа и обновил свой MapView с помощью ключа карт в xml (для этого публичного сообщения я его изменил)
  • Экспортировал свое приложение и использовал debug.keystore для его создания

Я запускаю его на эмуляторе. Карты на эмуляторе работают.

Android Manifest

<application 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" > 
    <uses-library android:name="com.google.android.maps" /> 
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> 
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> 
    <uses-permission android:name="android.permission.INTERNET"/> 
    <uses-permission android:name="android.permission.READ_PHONE_STATE"/> 
    <activity 
     android:name=".MyActivity" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    <activity android:name=".GetLocation" android:label="@string/app_name"/> 
</application> 

location.xml

<?xml version="1.0" encoding="utf-8"?> 
<com.google.android.maps.MapView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:clickable="true" 
    android:apiKey="0psLgKtDQLB35-XJXUrjR4bKHIBDRuHu-O-xVhg" 
    android:id="@+id/location" 
/> 

sudo keytool -list -alias androiddebugkey -storepass android -keypass android -keystore  debug.keystore 

возвращает

androiddebugkey, 20 Mar, 2012, PrivateKeyEntry, 
Certificate fingerprint (MD5): 20:D3:54:D9:F8:70:17:A4:BA:21:5C:98:88:27:45:E0 

Fixed я ставлю польз-разрешение вне приложения тега и использует-библиотеку внутри применения тег

ответ

1

uses-permission за пределами <application> Тег. и

Не удалось получить фабрику соединений клиенту

и ее проблемы ключевую карту-апи .И вы должны создать свежий ключ Map-апи.

+0

я все еще получаю ошибку «Не удалось получить соединение фабрики клиента». Но это работает. – Siddharth

+0

@Siddharth вы уверены, что <использует разрешения> находится за пределами Тег в файле манифеста –

+0

Да, я просто положил его туда, обновил, экспортировал с помощью моего debug.keystore и отображаемой карты. Ошибка все еще проявляется, чувствует себя глупо. – Siddharth

0

Я считаю, что вы, возможно, есть решение для этого вопроса, но и для тех, кто еще ищет помощи для тот же вопрос здесь это анс

попытка поставить

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> 
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>  
<uses-permission android:name="android.permission.INTERNET"/> 

вне вашего приложения тег

просто оставить <uses-library android:name="com.google.android.maps" /> внутри тега

добавить метаданные в теге приложения как

<meta-data android:name="com.google.android.maps.v2.API_KEY" 
android:value="your API key"/> 

и это, безусловно, прекрасно работать