Google maps for android

Post on 18-Jul-2015

152 views 3 download

Tags:

transcript

Александр Зозуля middle Android developer

alexandrzozulia

Google maps for android

Для чего нам нужны карты?

Узнать где мы находимся Проложить оптимальный маршрут

Не забывая о современных технологиях:

GPS-трекинг Социальная составляющая Маркетинг Сфера цифровых развлечений

Google Maps Android API v2

Вставка карты как <fragment/> в xml 3D карты Доступные для использования слои:

indoorsatellite,terrainhybrid maps;

Названия в векторе,

Добавление карты в Android приложение

Добавить фрагмент в xml или реализоватьего в Activity

Инициализировать объект карты

Танцы с бубном в API Console

<fragment android:id="@+id/map" android:name=

"com.google.android.gms.maps.MapFragment" .../>

mMapFragment = MapFragment.newInstance();FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();fragmentTransaction.add(R.id.my_container,

mMapFragment);fragmentTransaction.commit();

private GoogleMap mMap;...mMap = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap();

Vs

API Console

SHA1 отпечаток ключа

Получение SHA1 отпечатка ключа для доступа к API

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android

Управление фокусом карты

map.animateCamera(CameraUpdateFactory.zoomTo(10), 2000, null);

CameraPosition cameraPosition = new CameraPosition.Builder() .target(MOUNTAIN_VIEW) .zoom(17) .bearing(90) .tilt(30) .build(); map.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition));

Mаркеры для отображения точек

Добавление маркера

Свойства:

static final LatLng NEW_YORK = new LatLng(-31.90, 115.86);Marker perth = mMap.addMarker(new MarkerOptions() .position(PERTH) .draggable(true));

• Position • Anchor• Alpha• Snippet• Icon• Draggable• Visible• Rotation

Кластеризация маркеров

Готовые решения

Clusterkraf

Android Maps Extensions

Geocoder — инструмент поиска геоданных

getFromLocation(double latitude, double longitude, int maxResults)

GetFromLocationName(String locationName, int maxResults, double lowerLeftLatitude,double lowerLeftLongitude, upperRightLatitude,

double upperRightLongitude)

GetFromLocationName(String locationName,

int maxResults)

Street View — гуляем по улицамДобавить фрагмент в xml или реализовать

его в Activity

Инициализировать объект StreetViewPanorama

D

Street View

Street View

Street View

Indoor

Indoor

Map Maker

Перспективные проекты с использованием карт

Android-гид: Layar - браузер дополненной реальности

Прокладываем маршрут по интересным местам

Определение достопримечательности

GotYa!

вместе с фотографией похитителя пришлёт вам ссылку на Google Maps, приложение платное.

Игры с использованием карт

Футквест

Цель: добраться до определенной точки на карте, при этом отстреливая по пути полчища чудовищ

Вот оно!

Google maps pokémon challengeФутквест с элементами тамагочи

Цель: добраться до определенной локации и с помощью камеры отловить себе питомца.

В дальнейшем Вы можете его тренировать, воспитывать и даже устраивать бои!)

Google и Bungie создали интерактивный мир игры Destiny с использованием Street View

Разработчика игры чуть не арестовали за набросок на доске

Demo

https://github.com/alexz89ua/TheWorld

Вопросы?

Спасибо за внимание!