New cross platform mobile app places api - android

I'm new to app development and have a few questions related to google maps and places
I am a USA resident and developing an application with a programmer in India which will work on Android and iPhone. I'm wondering if I can use apple maps on iPhone and run Google Places over it. I thought I read paper work saying google places must be run on google maps period. My programming guy said this is fine to do because my app will be free? And we will run google maps on iPhone after we have established people want the app? I will have to upgrade to the business edition of maps once the app hits say 10000 users also which means I can use places over any map.
Can anyone confirm this?
Thanks
James

Google Places API usage must conform to our Terms of Service. And yes, you are correct, you need to display Google Places API results on a Google Map. We have Google Maps SDK for iOS so that should be reasonably easy to accomplish.
Being a free app doesn't absolve you of conforming to our Terms of Service, fwiw.

Using the Google Places API you can search the nearby places of a given co-ordinate. It is true that you can only request around 1000 times for free. Places API doesnt require you to be running any map application ( Apple Maps or Google Maps ). It is simply a WebService hosted by Google from which you get the data back. You can choose to display the data however you want.

Related

Currently, is using google maps for android in China working?

Currently developing an app including google maps, I'm willing to make it work for China as well.
I know the situation in China evolved a bit during the last years. So I would like to know: is it possible to use google maps for an android app in China?
If I attempt to use it as it is directly, the map remains blank, taking probably too long to load or being blocked by the chinese firewall. And my phone has the google services, which is not the case of many other phones.
However, a version of google maps exists in China. See this link: http://www.google.cn/maps?hl=en
So as a part of google is not blocked, would it be possible to load the data of the google maps API for android from the chinese server when the user himself is in China or doesn't have the google services or a VPN?
I finally gave up on google maps and change to GaoDe (amap).
First because Google maps need the googles services, which are not available on Chinese phones.
Then because if there is a way with JavaScript to get to the Chinese google map ( see the following link: developers.google.com/maps/faq?hl=en#china_ws_access ), for android with java it is still not reliable.
Nearly all of the Google service are not working in China.
Most Chinese developer use Baidu or Gaode as the location provider.

Using the Google Maps Android API in china

How to make the coordinates that located by using the Google Maps Android API (v2) in China correctly display on google map?The type of the coordinates is WGS84 or GCJ02? Any views?
At the moment Google Maps are not officially supported in China. Technically maps are working, but there are 2 major problems for your Chinese customers:
Maps won't work without Google Play Services. Most of the Chinese users do not have them installed.
Google Maps are actually not accurate enough and have some weird offset in coordinates.
What are your options? You will have to use Baidu maps. But the API of their library is different from Google Maps, so to solve the problem you might want to take a look at this library which we wrote: https://github.com/car2go/AnyMaps
Google still has no map publishing license in China (at least as my latest info goes) It may well be that in the near future Google's Map services will be blocked.
A lot of Chinese websites, including ours, use Google's JS as well as their Service API's, Among them is Google's geocoding api. in china, baidu (NASDAQ:BIDU) and sogou [the minor search engine, part of sohu (NASDAQ:SOHU)] both provided online maps and also APIs,
actually, in china, as of now, the google maps api are still available now. as from recent chinatech.us news, Google China passed the annual inspection and got more opportunity to get online map business license so, the 3 API are are and available.

what is the best between google map API v2, google map API V3 OpenStreetMap for android application?

i'm developping an android application for tour guide using REST API and Json, so i need to make a map. i don't know what is the best to work with (google map API V2 or API V3 or OpenStreetMap)?? my boss tell me to avoid google map because google can withdraw it at any time.
As far as I know, Google maps v3 is not for Android. And seeing your tags on question, I think it's not an option for you.
As far as Google maps v2 and openStreetMap are concerned, I have always preferred Goole maps because it belongs to same Google Android belongs. So there are (probably) easier integrations and it makes sense to use it especially on Android. Besides, the point that "Google can withdraw it any time" doesn't make any sense to me. Think of the things you use on Android and what if "Google withdraws them".For why openStreetMap is better than Google maps (not from developer's point of view), see this
Founder: OpenStreetMap Already As Good Or Better Than Google Maps
The boss probably told you this, because it is NOT allowed to use the Google API for this purpose because of their terms. See 10.2 d) i)
(d) No Navigation, Autonomous Vehicle Control, or Enterprise Applications. You must not use the Service or Content with any products, systems, or applications for or in connection with any of the following:
(i) real-time navigation or route guidance, including but not limited to turn-by-turn route guidance that is synchronized to the position of a user's sensor-enabled device.

Is it possible to create turn-by-turn GPS navigation app on Android/iOS using Google Maps?

Today I've talked to a client and he wants to build a simple navigation APP on Android!
Basically we could use Google maps, place some of "our" markers to show some locations (restaurants, hotels etc.) .. also we need to show user's friends near by!
Everything of that is possible in Google Maps API on Android, except I can not find any useful information about Turn-by-turn navigation implementation inside my own app (without switching to Google Maps App) ..
Can someone simply clarify - is it possible to use Google Maps inside an Android app to create turn-by-turn GPS based app?
thanks
I agree with the answer stated above but there is also a key clause in section 10.4.c of the google maps API privacy terms here.
It states
No navigation. You will not use the Service or Content for or in connection with (a) real-time navigation or route guidance; or (b) automatic or autonomous vehicle control.
Therefore I'd like to proceed and answer your question and say No, it is not possible to create a turn-by-turn navigation application on android by using Google Maps API without breaching their privacy policy.
Edit: Read answer by Tushar below before using this answer
First Option
If you want to implement the navigation completely in your app you will have to use a combination of the Google Maps API and the Google Directions API. They are free to use up to a limit and then you have to pay for the api requests.(https://developers.google.com/maps/documentation/directions/)
Second Option
I would just send the latitude and longitude of the location you want to navigate to the devices Maps app. Here is some code to start you off with this method:
double lat = < latitude of the location you want to navigate to>
double lng = < longitude of the location you want to navigate to>
String format = "geo:0,0?q=" + lat + "," + lng + "( Location title)";
Uri uri = Uri.parse(format);
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
This will open the device's Maps app and plot the location and the user can use the app to do what ever they want.
I would go with the Second Option, it is stupidly easy to implement.
After searching a lot, I have found two options for turn-by-turn navigation with voice instructions and arrow images.
skobbler or sk maps (http://developer.skobbler.com/)
HERE Maps (https://developer.here.com/)
HERE Maps is somewhat costly and does not allow free usage (only 90 days of trial period). But it has lots of advantages like:
Clear and perfect documentation: The documentation they provide is clear and easily understandable, also the demo app they provide has all the required things implemented. So you can copy-and-paste many things.
Developer friendly: Full control of maps for developers (no restrictions, you can do anything that you can think of with maps).
Coverage: Navigation is not only clear and good for some specific countries, but for almost all countries. I have checked it in India for example. Apple Maps is not providing routes in India, Google Maps are providing it, but from my perspective, HERE Maps is much clearer and even better than Google.
skobbler is good and allows free usage up to a limit, but it's not good for all countries (not covering India up to level). Also it is not that much developer friendly as HERE Maps.
I stumbled upon this thread by searching for a turn-by-turn solution myself and I searched a bit further and found this promising javascript project:
FFWDme.js - is a JavaScript toolkit that aims to bring interactive GPS driving directions to the mobile browser
It's open source.
It's configurable, but by default it uses leaflet.js for slippy maps, and configurable Tile-server, so you could run it off Open-street maps. It also uses an opensource Graphhopper for direction services, but you can add your own.
Looks promising!
Creating turn by turn navigation using Google Maps API is not allowed in the Google Maps API ToS, even after the July 2018 pricing change where they updated their ToS.
From Google Maps new ToS section 3.2.3 (emphasis mine):
(d) No Re-Creating Google Products or Features. Customer will not use
the Services to create a product or service with features that are
substantially similar to or that re-create the features of another
Google product or service. Customer’s product or service must contain
substantial, independent value and features beyond the Google products
or services. For example, Customer will not: (i) re-distribute the
Google Maps Core Services or pass them off as if they were Customer’s
services; (ii) use the Google Maps Core Services to create a
substitute of the Google Maps Core Services, Google Maps, or Google
Maps mobile apps, or their features; (iii) use the Google Maps Core
Services in a listings or directory service or to create or augment an
advertising product; (iv) combine data from the Directions API,
Geolocation API, and Maps SDK for Android to create real-time
navigation functionality substantially similar to the functionality
provided by the Google Maps for Android mobile app.
I am late here but it would help someone, I found something on this context. Google providing In-app Navigation and Google Maps turn-by-turn directions support. It's paid, you can check more about this on below link.
https://cloud.google.com/maps-platform/rides-and-deliveries
Not sure if it solve your problem or not.
Not yet possible but google has some private partnerships
Lyft introduced google maps navigation in-app
https://www.theverge.com/2017/10/12/16465414/lyft-google-maps-waze-navigation-app-drivers

Google Maps Mobile SDK for Business vs. Google Maps Android API

We are using google map android api 2.0 for providing map functionality in our android application.
In our application Google map will be used for capturing and showing location on below use cases .
Whenever a client opens the application (from androiddevice ) depending upon location
services current location will be captured and using reverse geocoding process
appropriate address will be generated.
In reverse flow if any end user wants to enter address manually, using geocoding Service
appropriate location will be showed on the map.
Here are my questions
1>> What is the daily map load(api calls) limit for google map android api 2.0 as there is for google map javascript api 3.0(25k map loads per day)?
2>> What is the geocoding(android.location.Geocoder) limits(No. of geocoding request) per day?we are not using server side geocoding which limit is 2500 free request per day.Does this limit applies to android geocoding(android.location.Geocoder)?
3>> Our app is for government authority and city citizen will be using it,for that can I use google map android api 2.0 or I have to purchase Google Maps Mobile SDK for Business?
4>> what is the difference between Google Maps Mobile SDK for Business and Google Maps Android API 2.0?difference in terms of map loads per day and gecoding limits ?
5>> In what case scenario I should use Google Maps Mobile SDK for Business and Google Maps Android API 2.0?
Any answer clarifying above questions will be really helpful!!!
Thanks in advance
The accepted answer is misleading because although the API console shows no limits on the Maps API, you will be contacted by Google to enable billing or get a Maps for Business licence if the usage of Maps API stays high consistently.
Here are the differences in the usage quotas between the Google Maps Android API and Google Maps API for Business: https://developers.google.com/maps/licensing
Below are the key differences in the SDK of the two APIs:
https://developers.google.com/maps/documentation/business/mobile/android/#comparing_versions
P.S. The SDK comparison table above says that Maps for Mobile SDK is available only as a static library, but if you read the previous paragraph on the same page you can see that you can also get the latest version of Maps for Business SDK through the Android SDK Manager.
I'm a GDE for Google Maps (not Googler), and I asked these questions to the Google Maps team before.
1) No limitation for Google Maps Android API v2.
See the Google APIs Console.
2) I heard no limitation for the android.location.Geocoder from Google Maps team,
because of it's part of Android System.
Read this answer: Android Geocoder quota limits
3) You can use both. But if you want to distribute it without online store, you should contract with the business agreement. Follow the TOS 9.1.2
https://developers.google.com/maps/terms#section_9_1_2
4) There is no support by Google for Google Maps Android API v2.
Read this page.
https://developers.google.com/maps/documentation/business/mobile/

Categories

Resources