IOS Map (Google Map API vs. MapKit?) - ios

I'm trying to make an iOS app that shows my location on a map and shows some stores (as pins) around me. I want the store pins to be clickable so that below the map there will be a label showing the details for this store when user clicked/touched the pin. My question is should I use MapKit or Google Maps API?
If Mapkit, I'm building in XCode 4.2, the only framework i see is iOS 5 -> MapKit Framework, if i use it, would my app still work on phones with iOS 4?
If Google Maps API, I believe I'll have to use a web-view then load a html googlemaps page. How would I detect a click event on the store pin and send this message to my label below the webview?

MapKit.framework is the most right choice for an App.
You can set the Deployment Target to 4.0 in Xcode, then the App will run on iOS 4 correctly.
(But you can't use Storyboard for interface builder.)
Web App is significantly slower than native App right now.
Hope to help.

It is not necessary that you use a webView if you are using Google's API. You can make use of MKMapView to show stores around you. And in mapView, giving annotations to stores is quite a simple thing. Google Places API is the right place you have to reach. They provide you a request response either in Json or in XML(as you wish). All you have to do is parse it out and drop pin-annotations.

Related

Google Maps SDK doesn't work in iOS Share Extension

I have an app that uses the Google Maps SDK for iOS to show an interactive map on a particular screen. It works great.
Now I've added an embedded "share extension" that uses the same components to allow the user to share content (e.g. photos from the Photos app) to my app. Everything else in the extension is showing up exactly as in the app, apart from the Google Maps component, which shows the Google logo on a blank map with no features.
The map responds to taps as I would expect (e.g. I can blindly tap the map and it will report the coordinates I've tapped on), though nothing is shown on the map, which makes me think this is a rendering problem.
The SDK is being initialized with the same API key that I use in the main app. The API key is not restricted to a particular app ID in the Google Console.
Has anyone seen this? Any workaround (apart from switching entirely over to the Apple Maps SDK)?

Is it possible to get turn by turn directions using Google Maps Api in iOS?

I am looking for a way to get or make turn by turn navigation using Google Maps Api in swift. I've done drawing polylines from source to destination using GoogleMaps Api but still couldn't find a way to do turn by turn navigation. Is it possible?
-Thanks
Yes. It is possible.
Please refer following link which is using turn by turn directions using google API.
https://itunes.apple.com/us/app/biznavi-gets-you-where-you/id597147565?mt=8
(see last two screen shot of iPad from itunes link)
To achieve it, you have to use Google Direction API which allows us to use upto 8 way points.
After that you will get an array of route including all turn by turn message and lat/long.
Just create a CLRegion of 100 meters (or as per your requirement.) around your current location in locationDidUpdate method. If next point of route array falls within CLRegion, just show a message received in routes array by google API.
I have made above application but it was not updated after uploading to store so it is having old UI and it is not having iPhone 5+ support. Sorry for that but you will find feature you require in this app...

Google map api + node.js realtime backend + ios

I'm new google map, so im not really sure how to start. I have few questions that Im currently confused right. I'm trying to build an application similar like uber
1) Google maps comes with and SDK, and how exactly am i going to make it in real-time, for example there are two guys with GPS, how does Guy A can see Guy B moving in reatime, do i need to use node.js + socket.io to make it work? or the SDK itself already handled that.
To start with, Google Maps SDK for IOS automatically handles access to the Google Maps servers, map display, and response to user gestures such as clicks and drags.
Please note of the following when using the Google Maps SDK for iOS in your application:
You need to comply with the Terms of Service and ensure that your app complies with applicable laws. Note that when using the SDK, your application name and version, authentication information and a cross-application anonymous identifier is automatically sent with each request.
You must include the attribution text as part of a legal notices section in your application which can be obtained by making a call to [GMSServices openSourceLicenseInfo].
Developing an application with the SDK requires the following: (1) Xcode 6.3.0 or later. and (2) iOS SDK 8.0 or later.
And for the implementation part, this SO post - how to track real time position using google map API? gives out the steps needed which could help.

Offline Google Maps in iOS

I am looking for Offline Google Maps in iOS (Objective c).
Is there any way to download the Map into the App when user is connected to internet, and show the downloaded map when user is offline and using the App ?
Any help will be highly appreciated.
I don't know much about it but I have heard some once talking about the same thing and using openstreetmaps instead of Google Maps.
OpenStreetMaps: http://www.openstreetmap.org/
As far as I know Google Maps doesn't implement that feature on its iOS Framework yet. But there are other Frameworks, such as Skobbler or Nutiteq that provide what you need.
It is quite easy to use Google maps as the offline mode you just need to download the map for the particular location you need to visit offline, later you can access that map anytime. I recommend you to see complete tutorial with screenshots here.
Follow some below steps:
1: Open google maps.
2: Navigate to the menu, and select offline area.
3: Select the area you want to use as area as an offline map.
4: Now tap download.
You can access this map in future for one month after which it will ask for updates.

Google Maps API v2 on iOS always show last map view before

I am using Google Maps API v2 with PhoneGap to develop both Android and iOS application. For that purpose i am using PhoneGap plugin that implements native device Google Maps app rather then JavaScript API.
In iOS when i load/show map it first shows last visited location for half a second then it goes to place i set with setCenter or moveCamera. And if there isn't any last visited location (app is started for the first time) map starts from 0,0 coordinates.
In Android everything works fine, when i set certain location it doesn't show anything before that.
I have tried every method there is and nothing works, and i am starting to think that this is default behavior in Google Maps SDK for iOS. But its so bad and makes using maps so confusing that its hard for me to believe there isn't way around this.
Did you try to add cookies function , IOS sometimes specially when using maps dosnt allow that , except those who will allow the cookies, thia would work if its in browser but not natively. Moreover, even if you use phonegape build , it only complie files that Apache understand, meaning you wont be eligable to use ruby files or other files that only supported by the service.

Resources