Google Maps Api Key дает серые плитки - PullRequest
1 голос
/ 15 декабря 2011

Я использовал ключ отладки, и мое приложение работало очень хорошо, но когда я сгенерировал свой собственный ключ API, мои карты Google отображают только серые плитки. Вот мой xml файл

 <?xml version="1.0" encoding="utf-8"?>
 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:background="@drawable/bg" >

<com.google.android.maps.MapView
    android:id="@+id/mapView"
    android:layout_width="fill_parent"
    android:layout_height="400px"
    android:layout_alignParentTop="true"
    android:layout_marginTop="20px"
    android:apiKey="0FngR799edZTGCRHpFXeNAlq6bB8LjrNCFAyPPg"
    android:clickable="true"
    android:enabled="true" />

Я сделал все правильно, чтобы получить свой ключ API. Я даже дважды пробовал его с двумя разными хранилищами ключей, скопировал и вставил отпечаток MD5 ... Вот мой манифест

   <?xml version="1.0" encoding="utf-8"?>
  <manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="unjustentertainment.mything.com"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk android:minSdkVersion="4" />

 <uses-permission android:name="android.permission.INTERNET" />
 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" >


    <activity
        android:label="@string/app_name"
        android:name=".MyThingsActivity"
        android:theme="@android:style/Theme.NoTitleBar" >
        <intent-filter >
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name=".Items" 
                  android:label="@string/app_name"
                  android:theme="@android:style/Theme.NoTitleBar">
                   <intent-filter >
            <action android:name="unjustentertainment.mything.com.CLEARSCREEN" />

            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>

      </activity>

        <activity android:theme="@android:style/Theme.NoTitleBar"
                    android:name=".Data" 
                  android:label="@string/app_name"

                  />

          <activity
       android:screenOrientation="portrait"
         android:name="com.google.ads.AdActivity"
          android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
          />


                <uses-library android:name="com.google.android.maps"/>
</application>



    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

Я просто не могу понять, почему ни один из моих ключей API не работает. Любые идеи полезны. Спасибо, я также уже подписал мой пакет

Ответы [ 5 ]

1 голос
/ 01 февраля 2013

Ключ API для debug работает ТОЛЬКО на эмуляторах.

Если вы используете Eclipse для загрузки программного обеспечения в debug mode на телефон, вы получите плитки, а не карту.

  • Если вы обновляете карту с помощью ключа API release, используйте Eclipse EXPORT для создания apk-файла.
  • Скопируйте это на SD-карту телефона.
  • Затем используйте приложение для установки (скачать бесплатно из Google Play) для установки это по телефону РАБОТАЕТ !!!
1 голос
/ 06 декабря 2012

Для всех, кто застрял, у меня была эта проблема со старым приложением на работе. Я безуспешно пытался сгенерировать ключ карты-api уровня 2 и api level 3 (попробовал все советы здесь).

Когда я переключился на ключ уровня API 1, я смог заставить его работать нормально.

1 голос
/ 15 декабря 2011

Попробуй поставить

<category android:name="android.intent.category.EMBED"/>

внутри карты деятельности.

Если это не сработает, попробуйте удалить фон ...

1 голос
/ 15 декабря 2011
  • Если вы подписываете с помощью ключа отладки -> используйте debug apiKey для карт.
  • Если вы подписываете с помощью своего собственного ключа -> создайте свой собственный apiKey.

Это должно быть все;вы можете сгенерировать ключ API здесь.

Перейдите по этой ссылке для получения дополнительной информации о том же.

Не вставляйте MD5 value вашего ключав apiKey = attribute вашего макета.

1 голос
/ 15 декабря 2011

Вы должны подписать приложение своим хранилищем ключей, используя собственный ключ API, а не хранилище ключей отладки.

Если вы еще не прошли этот процесс, самый простой способ - через Eclipse (с графическим интерфейсом)

  • Правой кнопкой мыши щелкните проект.
  • Перейдите в Инструменты Android.
  • Экспорт подписанного приложения.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...