- PVSM.RU - https://www.pvsm.ru -
И на нашей улице переворачиваются грузовики с печеньками мороженым и мармеладками! Как уже было сказано [1], вышла новая версия API. И даже вкратце было рассказано, что же там есть новенького. Я, пока, не могу раскрыть всех улучшений, с точки зрения разработчика. Но некоторые особые плюсы разработки приложений, использующих карты, готов выделить.
Первое, и самое, наверное, вкусное — теперь можно во всю использовать fragment’ы, вместо MapView. Для этого достаточно вставить следующий код в разметку:
<fragment
android:layout_width="match_parent"
android:layout_height="match_parent"
class="com.google.android.gms.maps.SupportMapFragment"/>
Во-вторых стало гораздо удобней работать с пинами. Правда, теперь нужно привыкнуть к тому, что они называются маркерами, и будет гораздо удобней. Теперь не нужно городить ItemizedOverlay, и тому подобное. Теперь достаточно просто выполнить метод addMarker(MarkerOptions options) [2] с нужными параметрами, и маркер будет красоваться на указанной позиции.
Третий плюс — стало совсем удобно рисовать на карте объекты, которые без проблем будут зумиться и скролиться вместе с картой, без единой заморочки! Достаточно просто добавить фигуру(метод addPolygon(PolygonOptions options) [3]) или линию(метод addPolyline(PolylineOptions options) [4]) на карту, и всё. Это значит, что теперь без проблем можно закрасить страну, город, район… Свою машину?) Да всё, что угодно!
В глаза мне бросились следующие минусы:
Не отпугнуло? Тогда приступим к запуску нашего первого примера.
Для начала нам необходимо установить/обновить Google Play services SDK. Для этого нужно сделать следующее:
После того, как установка завершена, по адресу <android-sdk>/extras/google/google_play_services можно найти папки libproject/google-play-services_lib и samples/maps. Из содержимого первой папки нужно сделать модуль, который затем будем подключать к проекту. А из второй — как раз пример приложения по работе с картами. Советую сперва скопировать эти папки в директорию, где у вас лежат проекты, и уже там над ними работать, чтоб в SDK всегда лежала чистая копия библиотеки с примерами.
К сожалению, подсказать, как всё это проверуть в Eclipse я не могу. А вот шпаргалку, как это сделать в Intellij Idea приведу.
package com.google;
public class Hack {
// Empty class to ensure there is a src folder.
}
Он необходим, чтоб Idea нормально создала из этой директории модуль
Проблемы при запуске случались, но были довольно мелкими.
Чтобы заработали карты остаётся получить новый API_KEY — старый теперь не подходит. Позволю себе более детально описать этот процес, который вкратце ув. djvu [5] объяснил здесь [6]:
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="your_api_key"/>
В полученном приложении будет очень много чего интересного, советую изучить максимально досканально.
PS: вся основная документация по новому API собрана здесь [9].
Легкого и удачного геокодинга вам!
Автор: senneco
Источник [10]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/android-development/22025
Ссылки в тексте:
[1] сказано: http://www.google.com/url?q=http%3A%2F%2Fhabrahabr.ru%2Fpost%2F161247%2F&sa=D&sntz=1&usg=AFQjCNEFwVkvZxmxJ-lzndWFS3gOUUvUTA
[2] addMarker(MarkerOptions options): https://developers.google.com/maps/documentation/android/reference/com/google/android/gms/maps/GoogleMap#addMarker(com.google.android.gms.maps.model.MarkerOptions)
[3] addPolygon(PolygonOptions options): https://developers.google.com/maps/documentation/android/reference/com/google/android/gms/maps/GoogleMap#addPolygon(com.google.android.gms.maps.model.PolygonOptions)
[4] addPolyline(PolylineOptions options): https://developers.google.com/maps/documentation/android/reference/com/google/android/gms/maps/GoogleMap#addPolyline(com.google.android.gms.maps.model.PolylineOptions)
[5] djvu: http://habrahabr.ru/users/djvu/
[6] здесь: http://habrahabr.ru/post/161247/#comment_5534755
[7] Создаем: https://developers.google.com/maps/documentation/android/start#the_google_maps_api_key
[8] консоль: https://code.google.com/apis/console/
[9] здесь: https://developers.google.com/maps/documentation/android/
[10] Источник: http://habrahabr.ru/post/161457/
Нажмите здесь для печати.