Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
Agassy
0 / 0 / 0
Регистрация: 03.10.2014
Сообщений: 5
1

MapView. API Key2. Карта не отображается

22.10.2014, 16:52. Просмотров 1235. Ответов 2
Метки нет (Все метки)

Здравия всяк сюда входящему!
Тема - Освоение картографии на Android. Reverse Geocding.

IDE - Eclipse Version: 4.2.1.v20130118-173121
ADT - ...x86-20140702
Cellurlar TelePhone - Samsung 7652

Имеем следующий код:

-main.xml
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="horizontal"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent">
  <TextView
    android:id="@+id/myLocationText"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="@string/hello"
  />
  <com.google.android.maps.MapView
    android:id="@+id/myMapView"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:enabled="true"
    android:clickable="true"
    android:apiKey="AIza xxx RBS4"
  />
- Manifest.xml
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.paad.whereami">
  <application 
    android:icon="@drawable/icon">
    <uses-library android:name="com.google.android.maps"/>
    <activity 
      android:name=".WhereAmI"
      android:label="@string/app_name">
      <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
      </intent-filter>
    </activity>
  </application>
  <uses-permission android:name="android.permission.INTERNET"/>
  <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
</manifest>
- Activity
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
package com.paad.whereami;
 
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.Point;
import android.graphics.RectF;
import android.location.Location;
import com.google.android.maps.GeoPoint;
import com.google.android.maps.MapView;
import com.google.android.maps.Overlay;
import com.google.android.maps.Projection;
 
public class MyPositionOverlay extends Overlay {
 
  private final int mRadius = 5;
 
  Location location;
 
  public Location getLocation() {
    return location;
  }
  public void setLocation(Location location) {
    this.location = location;
  }
    
  @Override
  public boolean onTap(GeoPoint point, MapView mapView) {
    return false;
  }
  
  @Override
  public void draw(Canvas canvas, MapView mapView, boolean shadow) {
    Projection projection = mapView.getProjection();
 
    if (shadow == false) {
      // Get the current location    
      Double latitude = location.getLatitude()*1E6;
      Double longitude = location.getLongitude()*1E6;
      GeoPoint geoPoint; 
      geoPoint = new 
        GeoPoint(latitude.intValue(),longitude.intValue());
 
      // Convert the location to screen pixels     
      Point point = new Point();
      projection.toPixels(geoPoint, point);
 
      RectF oval = new RectF(point.x - mRadius, point.y - mRadius, 
                             point.x + mRadius, point.y + mRadius);
 
      // Setup the paint
      Paint paint = new Paint();
      paint.setARGB(250, 255, 255, 255);
      paint.setAntiAlias(true);
      paint.setFakeBoldText(true);
 
      Paint backPaint = new Paint();
      backPaint.setARGB(175, 50, 50, 50);
      backPaint.setAntiAlias(true);
 
      RectF backRect = new RectF(point.x + 2 + mRadius, 
                                 point.y - 3*mRadius,
                                 point.x + 65, point.y + mRadius);
 
      // Draw the marker    
      canvas.drawOval(oval, paint);
      canvas.drawRoundRect(backRect, 5, 5, backPaint);
      canvas.drawText("Here I Am", 
                      point.x + 2*mRadius, point.y, 
                      paint);
    }
    super.draw(canvas, mapView, shadow);
  }
Ключ, выпущен на дебажном сертификате:


Включен только! - Google Maps Android API v2.

В итоге, координаты и адрес определяются и отображаются верно!
Делаю вывод, что google-play-services установлен правильно и работает, связь с интернетом есть!

Но карта не отображается!

Помогите, пожалуйста понять, что делаю не так?

Заранее благодарен!

пс. Мелькала инфа, что Google, переходит на API v3, которая не требует ключа, может быть уже настал тот самый миг?
0
Миниатюры
MapView. API Key2. Карта не отображается   MapView. API Key2. Карта не отображается   MapView. API Key2. Карта не отображается  

QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.10.2014, 16:52
Ответы с готовыми решениями:

Google Maps API v2. Не отображается карта
Доброго времени суток. На днях решил поработать с Google API Maps. И столкнулся с такой проблемой....

Динамическое задание ключа google-Api для MapView
Всем привет. Создаю MapView при помощи xml разметки. Там в атрибутах указываю ключ для доступа к...

Не отображается карта
Доброе время суток, у меня есть приложение у которого есть функция отображения конкретной области в...

Не отображается карта
Почему не работает в любом браузере отображается по кодам сайта ...

Не отображается яндекс карта!
Здравствуйте, проблема в следующем, на сайте при нажатии на кнопку отображались яндекс карты АПИ...

2
Agassy
0 / 0 / 0
Регистрация: 03.10.2014
Сообщений: 5
23.10.2014, 11:23  [ТС] 2
Всем привет!
Сегодня выпустил, подписал и пр., ключ отличный от дебажного, а именно release...
Картина печальна, т.е. прежняя!
Карта не отображается

Ни кто, ни кто не сталкивался, с подобным???

пс Уже пару недель брожу по интеу, в поисках...
0
CoolMind
424 / 405 / 67
Регистрация: 06.10.2012
Сообщений: 1,738
23.10.2014, 12:39 3
Agassy, здравствуй!
Недавно сталкивался с такой проблемой, тоже долго мучался, но решил её коллега, поэтому решение не подскажу.
Мне кажется, у вас используется Map v1, потому что вы используете MapView (в XML). Более правильно было бы использовать так:
XML
1
2
3
4
5
        <fragment
            android:id="@+id/map"
            android:name="com.google.android.gms.maps.SupportMapFragment"
            android:layout_width="match_parent"
            android:layout_height="match_parent"/>
или так:
XML
1
2
3
4
5
        <fragment
            android:id="@+id/map"
            android:name="com.google.android.gms.maps.MapFragment"
            android:layout_width="match_parent"
            android:layout_height="match_parent"/>
После этого надо будет поискать по указанному коду решение на stackoverflow и других сайтах.
Дальше во время запуска программы карта отображаться не будет. Требуется подписывать release-ключом и делать ещё как-то шаманство (создавать пару ключей командной стройкой), а затем выпускать подписанный APK и устанавливать на устройство (например, через команду adb install путь_к_файлу.apk).
0
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.10.2014, 12:39

Не отображается Яндекс Карта на сайте
День добрый. Возникла проблема при добавлении на сайт яндекс.карты. Прописал скрипт, сама карта...

В диспетчере устройств не отображается сетевая карта
Проблемы с сетевым адаптером. Системна плата ECS P4M890T-M (2 PCI, 1 PCI-E x16, 1 CNR, 2 DDR2...

Не хочет отображается карта сайта Google
Сгенерировал карту сайта на http://sitemapgenerator.ru/ добавил в корневую директорию файл затем...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.