Роман Бусыгин "Yandex Map Kit для iOS в примерах"

33
Сеня, про зайцев это неактуально! 1

description

Роман Бусыгин "Yandex Map Kit для iOS в примерах" Я.Субботник в Новосибирске О докладе: На докладе вы узнаете, что такое Yandex Map Kit для iOS, чем он лучше Apple Map Kit Framework и как внедрять его в свои мобильные приложения.

Transcript of Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Page 1: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

— Сеня, про зайцев — это неактуально!

1

Page 2: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Yandex Map Kitдля iOS

или приключения банкомата во Владивостоке

2

Роман Бусыгин

Руководитель группы разработки мобильных Яндекс.Карт для iOS

Я.Субботник, Новосибирск, 19 ноября 2011 года

Page 3: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

На повестке дня

• Для чего нужен Yandex Map Kit?

• Что он умеет?

• Как он устроен?

• Кто его уже использует?

3

Page 4: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Yandex Map KitДля чего он нужен?

4

Page 5: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

— Будете у нас на Колыме — милости просим!

5

Page 6: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Что умеетYandex Map Kit

6

Page 7: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Что умеет?

7

Page 8: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Что умеет?• Карта с объектами

7

Page 9: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Что умеет?• Карта с объектами

• Разные типы карт

7

Page 10: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Что умеет?• Карта с объектами

• Разные типы карт

7

Page 11: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Что умеет?• Карта с объектами

• Разные типы карт

7

Page 12: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Что умеет?• Карта с объектами

• Разные типы карт

• Пробки и баллы пробок

7

Page 13: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Что умеет?• Карта с объектами

• Разные типы карт

• Пробки и баллы пробок

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

7

Page 14: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Что умеет?• Карта с объектами

• Разные типы карт

• Пробки и баллы пробок

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

• Настройка внешнего вида балунов

7

Page 15: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

— А у вас нет такой же, но с пелра… перламутровыми пуговицами?

— Федя! Дичь!

8

Page 16: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Yandex Map KitЧто внутри?

9

Page 17: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

АрхитектураApple Map Kit

10

MKMapView MKMapViewDelegate

MKAnnotationMKAnnotationView

Page 18: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

YMKAnnotationView

YMKMapViewDelegate

АрхитектураYandex Map Kit

11

YMKMapView

YMKAnnotation

Page 19: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Дальше следует непереводимая игра слов с использованием местных идиоматических выражений :)

12

Page 20: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Добавление объекта на карту

@interface PointAnnotation : NSObject <YMKAnnotation>

+ (id)pointAnnotation;

@property (nonatomic, copy) NSString * title;@property (nonatomic, copy) NSString * subtitle;@property (nonatomic, assign) YMKMapCoordinate coordinate;

@end

YMKAnnotation13

Page 21: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Добавление объекта на карту

- (void)configureAndInstallAnnotations { self.annotation = [PointAnnotation pointAnnotation];

self.annotation.coordinate = YMKMapCoordinateMake(43.244276, 76.951331);

self.annotation.title = @"!."#$$%&'()"; self.annotation.subtitle = @"*%+%, -%.%/($(+/)";

[self.mapView addAnnotation:self.annotation];

self.mapView.selectedAnnotation = self.annotation;}

YMKMapViewDelegate14

Page 22: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Добавление объекта на карту

- (YMKAnnotationView *)mapView:(YMKMapView *)mapView viewForAnnotation:(id<YMKAnnotation>)annotation{ static NSString * identifier = @"pointAnnotation"; YMKPinAnnotationView * view = (YMKPinAnnotationView *) [mapView dequeueReusableAnnotationViewWithIdentifier:identifier]; if (view == nil) { view = [[[YMKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:identifier] autorelease]; }

view.annotation = self.annotation; return view;}

YMKAnnotationView15

Page 23: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

— Лёгким движением руки брюки превращаются…

16

Page 24: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Yandex Map KitКто использует?

17

Page 25: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Яндекс.Карты

18

Page 26: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Яндекс.Такси

19

Page 27: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Яндекс.Деньги

20

Page 28: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Ваше приложение

21

Page 29: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

— В таком виде я не могу. Мне нужно принять ванну, выпить чашечку кофе…

22

Page 30: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Yandex Map KitКак начать?

23

Page 31: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Как начать

• Скачать на http://github.com/yandexmobile/

• Прочитать лицензионное соглашение

• Получить API ключ

• Drag-n-drop в Xcode проект библиотеки

24

Page 32: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Дополнительная информация

• Про Map Kit для Android рассказывал Максим Хромцов на Я.Субботнике в Алматы

• Map Kit для WP7 в планах, уточнять можно у Кости Заикина ([email protected])

• Мы откликаемся на #yasubbotnik

• … а также http://clubs.ya.ru/yasubbotnik/

25

Page 33: Роман Бусыгин "Yandex Map Kit для iOS в примерах"

Контакты

Роман Бусыгин

Руководитель группы разработки мобильных Яндекс.Карт для iOS

[email protected]

@nskboy

26