Your SlideShare is downloading. ×
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Building Mobile Cross-Platform Geospatial Apps, Nick Landry
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Building Mobile Cross-Platform Geospatial Apps, Nick Landry

1,437

Published on

0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,437
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
54
Comments
0
Likes
3
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Building Mobile Cross-PlatformGeospatial Apps with C#By Nick Landry,MVPSenior Product Manager –Infragisticsactivenick@infragistics.com@ActiveNick –www.ActiveNick.net
  • 2. Who is ActiveNick?•  Senior  Product  Manager,  Mobile  &  Data  Visualiza8on  Developer  Tools  –  Infragis8cs  •  Microso?  MVP:  Windows  Phone  Development  –  Mobile  Publisher  –  Big  Bald  Apps:  h"p://bit.ly/bbawp  •  Speaker.  Blogger.  Author.  Tweeter.  Gamer  •  20+  Years  of  Professional  Experience  •  Special8es:  –  Mobile  Development  –  Loca8on  Intelligence  &  Geospa8al  Systems  –  Data  Visualiza8on,  HPC,  Cloud  –  Mobile  Game  Development  •  Blog:  www.Ac1veNick.net  •  TwiTer:  @Ac1veNick    
  • 3. Disclaimers & Assumptions•  You  know  the  basics  of  Xamarin  development  •  You’re  a  .NET  developer:  C#  (or  VB.NET),  Visual  Studio,  XAML  •  You  know  some  basics  of  Microso?  device  development:  Windows  8/RT  or  Windows  Phone  •  You  know  some  basics  about  calling  REST  services  •  You  know  liTle  to  nothing  about  GIS  development  •  You  have  access  to  a  Mac,  and  preferably  an  iPad  or  iPhone  too  •  You  want  to  learn  cross-­‐pla_orm  techniques  &  best  prac8ces  for  mobile  development  on  iOS,  Android,  Windows  Phone  /  Windows  8  –  I  am  NOT  covering  general  mobile  design  considera8ons  –  I  am  NOT  covering  Hybrid  HTML5  App  Development  (i.e.  PhoneGap)  
  • 4. Agenda•  Overview  of  the  GIS  World  •  Why  GIS  +  Mobile?  •  Mapping  Imagery  Providers  Across  Pla_orms  •  Geospa8al  Services  •  Cross-­‐Pla_orm  Demo:  MyGIS  •  Geocoding  Services  Demo  •  Q&A  
  • 5. Mobile Platform Options
  • 6. More  than  Maps  &  GPS…  Overview of the GIS World
  • 7. What is GIS?Maps  (Raster  /  Vector)  Aerial  /  Satellite  Imagery  Data  Processing  Geocoding  Rou8ng  &  Direc8ons  Spa8al  Data  (Capture,  Storage,  Search)  Spa8al  Storage  &  Search  Repor8ng  &  Analy8cs  Loca8on  Services  
  • 8. Maps help you visualize critical business dataBusiness IntelligenceSupply Chain Customer Locations70-80% of business data has ageospatial componentWhy GIS?
  • 9. Why GIS + Mobile?•  Every  company  that  has  a  web  site  needs  a  map  of  where  their  loca8on  is  •  BeTer  Imagery  and  New  Perspec8ves    •  Personalizing  the  Mapping  Experience  •  Going  Mobile  –  Mobile  devices  are  loca8on  aware,  generally  smarter  and  more  powerful  –  Mobile  devices  will  overtake  the  PC  –  The  boundary  between  Personal  Naviga8on  Devices  and  Smartphones  is  blurring  –  Loca8on  Based  Adver8sement  is  becoming  a  reality  •  New  Emerging  Technologies  and  Techniques  –  Geofencing,  Background  Loca8on-­‐Tracking,  etc.  
  • 10. Geospatial Services for Developers
  • 11. Key GIS PlayersMicroso?  Google  Maps   Nokia  Maps  TomTom  Esri  MapQuest  Apple  Maps   OpenStreetMap  
  • 12. About ESRI ArcGIS•  ESRI  ArcGIS  is  a  broad  name  given  to  a  suite  of  GIS  tools  created  by  ESRI  •  Many  of  these  tools  are  designed  to  perform  complex  GIS  opera8ons  –  ESRI  develops  GIS  so?ware  that  is  used  by  more  than  300,000  organiza8ons  worldwide  •  Different  flavors  of  ArcGIS  include:  –  Desktop,  Mobile,  Server,  and  Online  •  ESRI  &  Microso?  have  been  partners  since  1986  •  ArcGIS  built  using  Microso?  Technology  •  Solid  Developer  Support  –  Map  Controls  on  virtually  every  pla_orm  –  REST  API  for  backend  /  cloud  GIS  services  –  No  Xamarin  bindings  yet…  sadly  
  • 13. Which Mobile Map Control?Control/Pla<orm   iOS   Android   Windows  8   Windows  Phone  Google  Maps   SDKXB   YesXB   (Yes,  WinJS)  Bing  Maps   (Yes,  Old)   (OSS,  JS,  Old)   Yes   Yes  Esri  ArcGIS   Yes   Yes   Beta   Yes  Nokia  Maps   Yes,  WP8  Apple  Maps   YesXB  OpenStreet   (via  MQ  SDK)   (via  MQ  SDK)   (Yes,  IG,  WinJS)  MapQuest   SDK   SDK  XB:  Denotes  the  availability  of  Xamarin.iOS  bindings  Denotes  a  “na8ve”  mapping  provider  for  this  pla_orm  
  • 14. SDK Wars: Apple Maps vs.Google MapsGoogle  Maps  • Data:  Google  • BeTer  Hybrid  &  Satellite  imagery  • 3D  Buildings  • Semi-­‐transparent  roads  in  hybrid  view  (Apple  Maps  app  too!)  • Rotate  &  Tilt  map  +  Camera  System  • No  8le  overlays  • Performance  capped  at  30fps  • Geocoding,  Direc8ons,  Places  API  • Consistent  across  iOS  &  Android  • App  bundle  increase  by  2-­‐6MB  • Limited  Quotas,  can  be  expensive  • Fast  SDK  updates  &  releases  possible  Apple  Maps  • Data:  TomTom  &  others  • Opaque  roads  in  hybrid  view  • Supports  gradient  polylines  • Supports  8le  overlays  • Animated  “pin  drop”  (markers)  • Can  automa8cally  move  to  follow  the  users  loca8on  • Loca8on  Search  API  • BeTer  performance,  smoother  feel  • Proprietary  iOS  experience  • Built-­‐in  SDK,  no  app  size  increase  • Free,  no  quotas!  • Mature  API  (since  iOS  v1.0!)  • More  community  resources  Comparison  Reference:  hTp://bit.ly/GMapsvsAMaps  
  • 15. Cross-Platform Solution DesignClient  Pla_orms  GIS  Providers  Loca8on  Data   Loca8on  Data  Google  Maps  iOS   Android  Nokia  &  Bing  Maps  Windows  Phone  
  • 16. DemoOverview  of  MyGIS  for  iOS,  Android,  and  Windows  Phone  8  
  • 17. Google Maps SDK for iOS•  Available  for  free  in  the  Xamarin  Component  Store  –  Official  iOS  Product  Page:  developers.google.com/maps/documenta8on/ios  •  Google  Maps  imagery  control  –  Views:  Normal/Road,  Satellite,  Hybrid,  Terrain/Topographic  –  Scroll/Pan,  Zoom,  Rotate  &  Tilt  gestures  –  Programma8cally  control  the  map  camera  –  Supports  Markers,  Info  window,  Polylines,  Overlays  (images)  –  Map  Events:  Camera  change,  Market  Tap,  etc.  •  Requires  an  API  Key  –  Obtain  at  hTps://code.google.com/apis/console  –  Request  a  key  for  iOS  apps  based  on  bundle  iden8fiers  
  • 18. Creating a Bing Maps Account1.  Go  to  hTp://bingmapsportal.com  2.  Select  the  Create  buTon  3.  Sign  in  using  a  Windows  Live  ID  4.  Fill  in  the  form  and  Save  
  • 19. Creating a Bing Maps Key1.  Log  into  the  Bing  Maps  Portal  2.  Select  “Create  of  view  keys”  3.  Provide  an  applica8on  name  4.  Select  the  proper  Key  Type  5.  Select  the  proper  Applica8on  Type  6.  Fill  in  the  CAPTCHA  7.  Press  submit  8.  Your  key  will  be  generated  and  displayed  below  the  form  
  • 20. Available Geospatial ServicesNomina8m   Geocoding  API:  2,500/day  quota  Places  Search  API:  100K/day  quota  50K  transac8ons  /  day  for  mobile  5  x  50  batch  geocoding  /  day  10K/30-­‐days  for  evalua8on  No  turn-­‐by-­‐turn  naviga8on  allowed  All  paid  services  
  • 21. DemoCalling  Geocoding  Services  in  C#  Display  Results  on  Google  Maps  
  • 22. Libraries Referenced in the Demo•  JSON.Net  (iOS,  Android,  Windows  Phone  8)  –  REST  calls  to  Google  Maps  Geocoder  •  Mapping  Controls  –  Google  Maps  SDK  for  iOS  –  Google  Maps  Android  API  v2  (part  of  Google  Play  Services  –  Default  Nokia  Maps  Control  (Windows  Phone  8)  •  Xamarin.Mobile  •  Infragis8cs  NucliOS  IGGridView  (iOS)  
  • 23. NucliOS Native iOS Controlswww.infragis8cs.com/ios  
  • 24. Infragistics NucliOS 13.1•  Na8ve  Controls  for  iOS  Developers:  Objec8ve  C  or  C#  •  Second  Release  in  April  2013  •  Data  Charts  +  New  Pie  Chart  Control  –  40  data  chart  types,  composite  charts,  full  data-­‐binding  support  –  13  trend  lines,  10  built-­‐in  data  markers,  legends,  34  financial  indicators  –  Iner8al  zooming  &  panning  in  real  8me  using  mul8-­‐touch  gestures,  with  charts  showing  over  a  million  data  points  –  Mo8on  Framework  support  for  animated  transi8ons  –  Styling,  themes,  gradients,  gorgeous  charts!  •  Grid:  Data  or  Layout  –  Can  be  styled  &  templated  to  look  like  almost  anything  –  Grouping,  sor8ng,  insert/remove,  filter,  reorder,  etc.  •  Radial  Gauges  •  Rich-­‐Text  Label  
  • 25. NucliOS Samples Browser•  Available  for  iPad  &  iPhone  today  –  hTp://bit.ly/igiossb  
  • 26. Infragistics NucliOS –Grid•  Context  Menu  (Tap  &  Hold)  •  Data  Binding  &  Data  Source  Helper  •  Row  Inser8on  and  Dele8on  •  Column  Inser8on  &  Dele8on  •  Filtering  •  Grouping  &  Sec8on  Headers  •  Pull-­‐down  to  refresh  •  Column,  Row  &  Cell  Re-­‐ordering  •  Fixed  /  Frozen  Columns  •  Scrolling  Shortcut  •  Infinite  Scrolling  •  Selec8on  •  Shortcut  Bar  •  Star  (  *  )  Sizing  on  Columns  •  Sor8ng  •  Styling  •  Slide  Row  Op8ons  •  Full  Xamarin.iOS  Bindings  
  • 27. Infragistics NucliOS –Grid
  • 28. Infragistics NucliOS –ChartCategory & Scatter SeriesCategory  Series  •  Area    •  SplineArea    •  Bar    •  Column    •  Line    •  Spline    •  StepArea  •  StepLine    •  Waterfall  •  Point  Range  Category  Series  •  RangeArea    •  RangeColumn  Sca"er  Series  •  ScaTer    •  Bubble      Financial  Series  •  FinancialPriceSeries  –  Candles8ck  •  FinancialPriceSeries  –  OHLC  Financial  Indicators  •  TypicalPriceIndicator    •  AbsoluteVolumeOscillatorIndicator    •  AverageTrueRangeIndicator    •  Accumula8onDistribu8onIndicator    •  AverageDirec8onalIndexIndicator    Polar  •  PolarLine    •  PolarArea    •  PolarScaTer    Radial  •  RadialColumn    •  RadialLine    •  RadialPie      13  types  of  trend  lines  built-­‐in  10+  types  of  markers  Animated  data  transi1ons  with  the  Infragis1cs  Mo1on  Framework    More  Features  Coming  in  13.1  (April)  •  Radial  Gauge  Control  •  Pie  Chart  Control  •  Rich-­‐Text  Label  Control  •  17  New  Data  Chart  Series  •  29  New  Financial  Indicators  •  New  Grid  Features  •  MonoTouch  Support  for  All  Controls  •  Japanese  Language  Support  •  New  Samples  Browser  •  New  Samples  Financial & Scientific Series More Chart Features28  
  • 29. Infragistics NucliOS –Chart
  • 30. Summary and Next Steps…Get Ready to Become a Cross-Platform Mobile DeveloperRegister  for  a  free  account  at  www.Xamarin.com  Download  Xamarin  Studio,  along  with  Xamarin.iOS  &  Xamarin.Android  Geospatial Development ResourcesGoogle  Maps  Developer  Resources:  developers.google.com/maps  Esri  ArcGIS  Developer  Resources:  developers.arcgis.com  Don’t forget Windows Phone & Bing MapsWindows  Phone  Dev  Center:  dev.windowsphone.com  Bing  Maps  Portal:  www.BingMapsPortal.com    Download Additional Resources & Become an ExpertDownload  NucliOS:  www.infragis1cs.com/ios  NetAdvantage  for  Windows  Phone:  www.Infragis1cs.com/mobile  30  1234
  • 31. More Maps & Location at EVOLVE•  Wednesday  –  1:30PM  “Mapping  on  iOS  and  Android”  By  Wally  McClure,  in  Crick  Salon  (Level  6)  –  iOS:  Apple  Maps  &  MapKit  API  –  Android:  Google  Maps  for  Android  –  Loca8on  Services  –  Maps,  placing  pins  on  maps  –  Responding  to  events  
  • 32. References Links•  Generate  JSON  Parsing  Classes  in  C#:  hTp://json2csharp.com  •  Google  Maps  –  Google  Maps  Developer  Resources:  developers.google.com/maps  –  Google  APIs  Console:  code.google.com/apis/console  –  Google  Maps  SDK  for  iOS:  developers.google.com/maps/documenta8on/ios  –  Google  Maps  Android  API  v2:    –  Geocoding  API:  developers.google.com/maps/documenta8on/geocoding  •  OpenStreetMap  (OSM)  –  Nomina8m  Geocoding  Service:    •  Bing  Maps  –  Management  Portal:  www.bingmapsportal.com  •  Esri  ArcGIS  –  Esri  ArcGIS  Developer  Center:  developers.arcgis.com  
  • 33. Recommended GIS Learning References
  • 34. Thank You!Slides  and  demos  will  be  posted  on  my  blog  at  www.Ac1veNick.net.    Please  fill-­‐out  an  evalua8on.  Your  feedback  is  important  and  appreciated.    Facebook: www.facebook.com/infragis8cs  Blog: www.Ac8veNick.net    Twitter: @Ac8veNick    Mobile Apps: bit.ly/bbawp  LinkedIn: www.linkedin.com/in/ac8venick  Website: www.infragis8cs.com  Infragistics Twitter: @infragis8cs  Email: ac8venick@infragis8cs.com  

×