I'm developing a little iOS App which shows POIs on a standard MKMapKit map (from Apple). When the user select a POI, the app send a request to Panoramio to get a photo from the latitude and the longitude, like that :
http://www.panoramio.com/map/get_panoramas.php?order=popularity&set=public&from=0&to=2&minx=XXXXXXXX&miny=XXXXXXXX... etc...
The problem is that I saw today on the Panoramio ToS :
http://www.panoramio.com/api/terms.html
Section 2: API Client restrictions
You may not use the API in API Clients using map technology other than Google Maps or any photo-sharing sites.
I'm not using Google Maps API for iOS so the question is : can I use the standard MKMapKit from Apple AND show photos from Panoramio in the same app ?
If not, is there an alternative solution to get photos from GPS coordinates ?
Thanks
First off, I AM NOT A LAWYER AND THIS IS NOT LEGAL ADVICE.
Disclaimer aside, use apple's CoreLocation classes to generate latitude/longitude information, and you never touch mapping software.
Geolocation and mapping are two complimentary functions that don't necessarily interact.
From what I read there, I don't see a problem with retrieving your location via the CoreLocation framework, and subsequently using that info to request map information from Panoramio.
Good luck!
Related
I am building an iOS application that in one of its functions implements reverse geocoding for obtaining street addresses from user gesture tap on a map.
When running the app using CLGeocoder's reverse geocoding features, I was only able to get the city and country details. In some cases in main roads I was able to get the main road name.
I thought that this limitation is from the Google Maps api.
But when I tested this example, (http://gmaps-samples.googlecode.com/svn/trunk/geocoder/reverse.html) I was able to get much more accurate and detailed information such as street number and name and zip code.
Is this a limitation of CLGeocoder? if so, how can I implement the Google Maps api on my app?
It's my understanding that CLGeocoder has not used Google for data for around the last year; When it did use Google there was a substantial limitation on number of users per day.
You may also want to try the same CLGeocoder call in an iOS6 simulator to see if you get more data.
You could use the Google API calling directly from your app, but be carful to read the TOS for limitations in regards to users.
Well, it would appear that yes, Apple's CLGeocoder is nothing like as accurate for forward geocoding (address -> coordinates) as the Google Maps Geocoding API, particularly outside of the USA. Using an Address Dictionary with all the fields filled out as fully as possible works a lot better than a simple address string, but it's still no where near good enough. Where Google will (usually) give you coordinates within 5-10m of the street number, Apple will give you coordinates somewhere in the right street, if you're lucky.
Found Apple Developer Technical Note TN2289 which details Supported Countries for CLGeocoder.
Further iOS6 would stop the support to use of Google Maps
I am developing an iPhone application in which I am using Google Places APIs. I am finding user's current location using GPS. And I want to display places around user's current location. I am able to find places around users but in JSON data which is returned by Google APIs do not include images of places.
How can I get images of places using Google places APIs?
Thanks in advance.
check this cool project built for exactly the same reason - iOS5-Google-Places. More here as a blog post. It also has has search built in.
Application will determine location. Issue Google Places API request
containing the LAT and LNG and TYPES (types are configurable) and will
return JSON results into an object to display in UITableView.
This should solve your requirements.
Just in case this is not baking your cake, then you need to roll up your own iOS Google Places wrapper using a UIWebView and Google Places APIs.
I would like to know if it is possible to pass an address from an SQlite data base to GPS or Google maps and have it show on a map at the press of a button. If anyone is aware of a tuturial that could help me that would be appriciated.
I would also like to get current location and show local places on map, also populated from the same database. Thanks in advance.
In order to translate address to lat/long coordinate you will have to use the Google directions API since apple is not supporting forward geocoding.
You can take a look at this API - pretty straight forward:
http://code.google.com/apis/maps/documentation/directions/
for iOS 4.x and below you will need to use the Google API but in iOS 5 Apple has implemented a really nice foreword geocoding API.
I am totally confused with google maps and maps of iPhone...
i have read that iPhone uses google maps.....and also spent some time on it....
But it never display the items like location pictures, balloons etc.
EDIT
THIS is photo for of browser
and following is same place for iPhone maps
second one did not show the annotation added by people.....
(this is what i was asking for ballons or other pictures which people adds to location on oogle maps)
I want to display all those in my application....
what should i do...
if you suggests implement Google maps API, then please suggest a working link...or provide some sample code if possible.....if anybody has done it...then please mail me at yogeshkumau#gmail.com
waiting for answer......
Points of Interests(location, pictures and baloons) that you are talking about can be shown in your maps, if you acquire the license for Google maps premier api. In that case you'd have to use dynamic maps by using google's web services. However if you want to implement it using MapKit framework on iOS devices, you'd have to draw your custom POIs using core graphics.
Apple has a special agreement with Google to use their maps on their platform. The internet is packed with examples of usage of MKMapView along with annotations (pins, there're no baloons on iPhone).
I have used MKReverseGeocoder from iPhone sdk for my application without using mapview of iphone sdk,but my application has map view which i am getting from google api passing Address.
But in order to get address i am doing as follows :
Current location(Latitude/Longitude) with CLLocation library
MKReversegeocoder API of iphone sdk to get address from latitude/longitude
Sending this address to google maps api to get the map
So my doubt is whether my procedure of using iphone MKReversegeocoder voilating the rules of google terms & conditions as i am not using mapview of iphone sdk
References:
http://developer.apple.com/iphone/library/documentation/MapKit/Reference/MKReverseGeocoder_Class/Reference/Reference.html
http://code.google.com/apis/maps/iphone/terms.html
Awaiting for anyone valuable help to clarify my doubt
You do not state which of Google's map API's you use for getting the map. According to clause 10.8 you may only use the static API if you access it from a web browser. If you are using any of the other API's you should be fine. You are not required to get the map through Apple's map API (clause 1.1, 1.3 and others) but may use additional Google API's for content.
Clause 10.12 states that you must only use the data in conjunction with a Google map. It doesn't however state which Google map API you must use for this (no requirements for using Apple API), so as long as you use at least on of the map API's this should be fine.
I'm not a lawyer by trade or profession, but to my best of knowledge and understanding of their terms you should be home safe.