MapKit vs. Google Maps SDK @ Macoun 2014
-
Upload
ortwin-gentz -
Category
Software
-
view
156 -
download
0
Transcript of MapKit vs. Google Maps SDK @ Macoun 2014
![Page 1: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/1.jpg)
Apple MapKit vs.Google Maps SDK
Ortwin Gentz@ortwingentz αortwin
![Page 2: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/2.jpg)
Warum Google?
![Page 3: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/3.jpg)
![Page 4: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/4.jpg)
![Page 5: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/5.jpg)
MapKit Google Maps SDK
Vektorbasiert ✔ ✔
Normal, Satellit, Hybrid ✔ ✔
Gelände ✔
Eigene Tiles, ersetzend ✔, ✔ ✔, ✔
Indoor, Stockwerke ✔
Gebäude ✔ ✔
POIs ✔
Verkehr ✔
Street View ✔
![Page 6: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/6.jpg)
SteuerungKartenausschnitt
![Page 7: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/7.jpg)
MapKit Google Maps SDK
Drehen ✔ ✔
Neigen ✔ ✔
Zoombegrenzung ✔
Kamera-Animationen ✔ ✔
↳ mit Timing-Kontrolle UIView-basiert CALayer-basiert
Edge Insets➜
![Page 8: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/8.jpg)
Hands on
![Page 9: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/9.jpg)
MapKit Google Maps SDK
Drehen ✔ ✔
Neigen ✔ ✔
Zoombegrenzung ✔
Kamera-Animationen ✔ ✔
↳ mit Timing-Kontrolle UIView-basiert CALayer-basiert
Edge Insets
➜
➜ privat ✔
![Page 10: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/10.jpg)
Gesten
![Page 11: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/11.jpg)
MapKit Google Maps SDK
Unterscheidung manuelle undprogrammatische Updates
bedingt lösbar➜ Macoun 2010
✔
Laufende Region-Updates ✔
Non-Annotation Tap-Erkennung➜
![Page 12: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/12.jpg)
Hands on
![Page 13: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/13.jpg)
MapKit Google Maps SDK
Unterscheidung manuelle undprogrammatische Updates
bedingt lösbar➜ Macoun 2010
✔
Laufende Region-Updates ✔
Non-Annotation Tap-Erkennung
Long-Tap Erkennung lösbar ✔
Standort-Tracking ✔
➜
➜
lösbar ✔
![Page 14: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/14.jpg)
Hands on
![Page 15: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/15.jpg)
MapKit Google Maps SDK
Unterscheidung manuelle undprogrammatische Updates
bedingt lösbar➜ Macoun 2010
✔
Laufende Region-Updates ✔
Non-Annotation Tap-Erkennung
Long-Tap Erkennung lösbar ✔
Standort-Tracking ✔
➜
➜
lösbar ✔
lösbar
![Page 16: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/16.jpg)
Annotations / Marker
![Page 17: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/17.jpg)
titlesubtitlecolorimage
animationdraggable
UIViewcalloutAccessoryViews
Custom drawnkein Highlighting
![Page 18: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/18.jpg)
Annotationserstellen
![Page 19: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/19.jpg)
MapKit Google Maps SDK
id<MKAnnotation> erstellen id<GMSMarker> erstellen
[mapView addAnnotation:] marker.map = mapView;
-[MKMapView:viewForAnnotation:] implementieren
-(UIView*)mapView: markerInfoWindow:
[mapView removeAnnotation:] marker.map = nil;
![Page 20: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/20.jpg)
Annotation-Taps
![Page 21: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/21.jpg)
MapKit Google Maps SDK
-(void)mapView: didSelectAnnotationView:
-(BOOL)mapView: didTapMarker:
-(void)mapView: annotationView: calloutAccessoryControlTapped:
-(void)mapView: didTapInfoWindowOfMarker
-(void)mapView: didDeSelectAnnotationView:
-(void)mapView: didTapAtCoordinate:
-[MKAnnotationView setSelected:animated:]
![Page 22: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/22.jpg)
Draggable Annotations
![Page 23: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/23.jpg)
Demo
![Page 24: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/24.jpg)
MapKit Google Maps SDK
annotationView.draggable = YES; marker.draggable = YES;
-mapView:annotationView:didChangeDragState:fromOldState:
-mapView:didBeginDraggingMarker:
-[MKAnnotationView setDragState:animated:]
-mapView:didDragMarker:
-mapView:didEndDraggingMarker:
![Page 25: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/25.jpg)
Overlays
![Page 26: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/26.jpg)
MapKit Google Maps SDK
Polylines und Polygone ✔ ✔
Geodätische Linie ✔ ✔
Kreise ✔ ✔
Core Graphics Operationen ✔
Bilder ✔ ✔
Tiles ✔ ✔
↳ oberhalb Label-Ebene ✔
Selektion ✔
![Page 27: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/27.jpg)
MKOverlay
MKOverlayRenderer
GMSOverlay
Geometrie
Darstellung
Geometrie
Darstellung
MapKit Google Maps SDK
![Page 28: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/28.jpg)
MapKit Google Maps SDK+[MKPolygon polygonWithCoordinates:count:]
[[GMSPolygon alloc] init] polygon.path polygon.fillColor/strokeColor
-[MKMapView addOverlay:] polygon.map = mapView;
-mapView:rendererForOverlay:
MKPolygonRenderer. fillColor/strokeColor
polygon.tappable = YES;
-(void)mapView: didTapAtCoordinate:
![Page 29: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/29.jpg)
Tile Overlays
![Page 30: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/30.jpg)
Hands on
![Page 31: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/31.jpg)
![Page 32: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/32.jpg)
Generelle Erwägungen
![Page 33: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/33.jpg)
Generelle Erwägungen
• Programmierung gegen bekannte Framework-Version
• Bug-Tracker offen, Google ist responsive
• Hohes Innovationstempo
• Terms of Use anschauen
![Page 34: MapKit vs. Google Maps SDK @ Macoun 2014](https://reader034.fdocument.org/reader034/viewer/2022051315/55b053411a28abf76e8b4575/html5/thumbnails/34.jpg)
Fragen? Ortwin Gentz
@ortwingentz · αortwin
Wohin? Streets