2013-05-15 25 views
9

Sürüş sırasında kullanıcı rotaları ve adım adım yol tarifleri vermeye yoğunlaşacak bir uygulama geliştiriyorum. Drive'ları sırasında uygulama içinde kalmaları önemlidir, bu yüzden onları uygulamayı terketmek ve yerleşik Haritalar uygulamasına gitmek istemiyorum. Son zamanlarda bu işlevin nasıl ekleneceğine dair çok fazla araştırma yapıyorum ve Apple'ın bu işlevselliği SDK'ya kutudan çıkarmaması nedeniyle bunun kolay olmadığını çok iyi biliyoruz. Bu seçeneklerim gibi görünür:Bir iPhone uygulamasında rotaları ve adım adım navigasyonu alma

bir UIWebView kullanın ve JavaScript ile bazı web tabanlı haritalar yüklemek ve JavaScript API kullanmak başka

  • bir yerden bir yere yolları (ve yön) sağlanması için rota çizme
  • MapKit veya Google Maps iOS SDK'yı kullanın, bir API aracılığıyla rotayı ayrı ayrı sorgulayın ve üstüne bir çeşit yol veya polyline çizin.
  • Kullanım turn-by-turn navigasyon

    • Kullanım kendi haritaları ile birlikte gelen özel kitaplığı (gibi CloudMade) sağlanması için masraf bir kütüphane (MTDirectionsKit gibi)

Burada eksik olduğum bir şey var mı? Her birinin artıları ve eksileri nelerdir ve nasıl bir çözüm seçmeliyim?

Bilgileriniz büyük beğeni topluyor. Teşekkürler!

cevap

12

Kullanıcıyı uygulamayı terketmek istemediğinizi ve bu durumun kötü bir kullanıcı deneyimi sanki gezinme turuna geçmek için yerleşik yazılımı kullanmasını istemediğinizi söylüyorsunuz. Kötü bir kullanıcı deneyimi, telefonu kilitlediğimde veya başka bir uygulamaya kesildiğinde banner'larım bir dönüşten bahsetmek için kilitleme ekranımda yönlendirme bilgisi olarak görünmeyen web API'sı veya bazı API'lerden bir dönüşten vazgeçmek zorunda kalacaktı Örneğin, telefonumdan müzik dinlerken geliyor. Apple haritalarını başlatmanızı ve sistemin navigasyonu çevirerek kendi sıranızı oluşturmaya çalışmak yerine, sürücüyü bir sürücü sırasında uygulamadan çıkma özgürlüğünü kısıtlamak yerine, ele almanın ne anlama geldiğini ele almanızı öneririm.

+0

Bu çok iyi bir nokta ve nihayetinde bu işlevselliği uygulamaya uygulamaya çalışmamı engelledi. Teşekkürler! – Andrew

1

Kris'in yanıtına katılıyorum. Turn-by-turn navigasyon muhtemelen en iyi yerleşik uygulama tarafından ele alınır. Ancak, bir 2D harita üzerinde bir rota ve ETA görüntülemek için, bu işlevselliği ücretsiz sunan Mapquest iOS API ile gideceğim düşünüyorum. Bu çözüm bugüne kadar mevcut olduğunu bilmiyordum.

4

ne diğer seçenekleri bakmak için olabilir ticari kütüphanelerin konuyla ilgili iken:

  • skobbler/telenav sdk - CloudMade kullandığı yönlendirme-in uygulaması ve turn-by-turn navigasyon (OpenStreetMap dayanan aynı haritalar ve Mapquest).demos ve licensing plans göz atın ve anlamaya o

(onlar uygulamanız için yeterli olabilir Serbest Tier var sizin için doğru çözüm olup olmadığını - ve o katmanda yukarıda giderseniz ben olması gerektiğini düşünüyorum göz önünde bulundurarak) uygulaması

  • sizi para kazanmaya ve bu süre varlık (bu konuda var zaten adlandırılmış seçenekleri) yanında: yakın gelecekte bir iOS sdk sağlayabilir olarak Mapbox için göz kulak - yönlendirme ve navigasyon
  • ile
+3

Araştırma yaptığımdan, 'skobbler/telenav' SDK'sının modern (ör. X64, Swift-hazır), kolay (Cocoapod yönetimli), akıllı (singletons) bir platform sağladığı anlaşılıyor. Ve ben çok araştırdım! Genel olarak uygun fiyatlı ... Google Maps for Work'ten en az daha ekonomik görünüyor. –