I have some kind of android gps app that uses the Google Maps Android SDK.
I want to pull google map tiles from this link using UrlTileProvider -> http://mt0.google.com/vt/lyrs=y&hl=en&x={x}&y={y}&z={z}&s=Ga
I can do this and it works fine, but I want to know if this is a rule violation.
I realize that this will be a specific and pointless case for many of you, because the Maps SDK already provides the tiles in very high quality and for free.
But the problem is that Turkish users cannot see satellite images via Maps SDK (because it is blurred). In order to overcome this situation, I need to apply this solution to Turkish users.
Picture 1- Outside of Turkey with sdk
Picture 2- In Turkey with sdk
Picture 3- In Turkey with Google tile urls
Related
I wanted to create a new map to store all my different routes I take daily:
* From Home to work
* Work to school
* school to park
... and so on.
But suddenly I had two open links:
https://www.google.com/maps/d/u/0/ "My Maps"
https://mapsengine.google.com/admin "Google Maps Engine"
First I thought they were related but I never arrived to modify a map created with My Maps in the Google Maps Engine and vive versa.
Somebody knows the difference of these two apps?
NOTE: All I needed was in "My Maps" app, but I certainly curious why they are kept separated from Google Maps Engine
Google Maps Engine allows you to add data layers on the maps. Basically you can add customized visualization on the map and furthermore if you are developing an app, you can embed your map saved in gallery in the app as an API. However, Google will stop supporting Maps Engine on January 29, 2016 and has stopped accepting new projects.
My Maps has a lot of similar functionality. You can add data layers here in CSV, XLSV or KML. You can also embed the map in a website and export KML of your custom map to embed as a KML layer.
Hope this is clear enough.
Im working on a project to create a google map of an internal floorplan of my company's buildings. I dont want to use google's new indoor maps features as we dont want the floorplans available to the public. I was wanting to create an entirely custom map and just use the google maps engine and strip away the traditional world map tileset. Is this possible and how would I go about do it? Currently our floorplans are in an image file so a way to import those easily would be ideal.
I faced this problem creating an app last summer. It does not look like Google Maps (at least at that time) allowed for custom map tiles. I ended up implementing my own Map function, however I used XML files to create colored maps. The functionality would be the same if you wanted to use images, however.
The only drawback is that the features do not have such things that are built in with Google Maps, like dropped pins, etc. due to the fact that it is a custom built module. The repo is on GitHub here: https://github.com/krmannix/SmartMart
The Android Activity that holds the map is located within SmartMart/SmartMart/src/com/example/searchcell3/MapListActivity.java
I am developing GPS based Location reminder in j2me. I am little bit confuse to which maps i use??.....Google maps & Nokia maps. Which one allows me good working... The working of my app are as follows :-
-User will provide a string to app to search a place of his/her desire.
-Then according to given string app will show a place on map by pointing marker on map.
-User can save that place or he/she can select a near by place rather than searched place by clicking on map or any other way.
-app will save that searched place coordinates & remind when it reached to near that place.
-When app remind to user about already stored place... that place should show on map by pointing an marker along with the how far he is from his destination.
The real choice here lies in whether to use a RESTful API like the Google Static Maps (or Nokia's RESTful Maps) or to use a native Java ME mapping library plugin such as the Nokia Maps API for Java ME. The latter has several major advantages:
Static mapping services such as the Google Static Maps API or Nokia's
RESTful Map API do not cache or tile the images when requested,
therefore each request involves a round trip to the server. If the
map on a mobile application needs to be refreshed at any time, using
a caching library will result in a reduction in network traffic after
around three maps have been displayed. An explanation of this can be
found here
As the name implies, Google's Static Maps API can only retrieve over
http static images for a requested coordinate point, image size,
image type and zoom level. Newer libraries offer additional
functionality out of the box offering dynamic Map content and touch
support, where the user can move around his/her current position,
zoom in, zoom out, modify the view mode to satellite or translate an
address to a coordinate point and show that on the map, among others.
This abstraction of the underlying functionality is hidden from the
developer so much less coding is needed in order to achieve the same
result .
Terms and Conditions for Nokia Maps are easier to fulfil than
Google - No legal restrictions of using the API outside a web browser
application or need to provide a link to the native Google Maps App
(if there is one), or to Google Maps (if there isn't one).
Nokia currently offer higher free daily request limits. Nokia Maps
API for Java ME supports up to 50,000 render requests per day and per
unique IP address (as of January 2012), for Nokia Developer
registered users (free of charge) while the limit for Google's Static
Maps API is currently 1000 unique (different) image requests per
viewer per day.
A couple of years ago there wouldn't be a choice, only RESTful solutions existed, but these days I would say a static http solution should only be used if you want a simple single image
As an abstraction of the underlying services, there are already a full set of examples to cover most of your use cases:
-User will provide a string to app to search a place of his/her desire.
-Then according to given string app will show a place on map by pointing marker on map.
http://www.developer.nokia.com/Commu...PI_for_Java_ME
-User can save that place or he/she can select a near by place rather than searched place by clicking on map or any other way.
Maybe you need to use a draggable marker:
http://www.developer.nokia.com/Devel...ples/#standard
Or react to the touch and find a Geocoordinate:
http://www.developer.nokia.com/Commu...PI_for_Java_ME
-app will save that searched place coordinates & remind when it reached to near that place.
This is known as geofencing and is covered by the Location API:
- http://www.developer.nokia.com/Resou...ty-events.html
-When app remind to user about already stored place... that place should show on map by pointing an marker along with the how far he is
from his destination.
Showing a Map with a Marker
http://www.developer.nokia.com/Devel...ples/#standard
For distance calculations, I guess you'd be after the ROUTING example
http://www.developer.nokia.com/Devel...mples/#routing
http://www.developer.nokia.com/Commu...g_with_Java_ME
Now you could re-write and all these services from scratch using RESTful APIs (and then go about debugging your code) , but I'm sure you'll agree it would be much easier to use an existing, working and tested framework for the low level plumbing and then just write your code on top using the services.
It is possible to encapsulate RESTful service in Java ME. As an example, added below is a screenshot from an app encapsulating the suggestion service
It is just a lot easier when someone else has already done this work for you and placed it in a library.
I understand that I can use MapKit within a paid iPhone app. (http://stackoverflow.com/questions/7282633/google-maps-apis-in-iphone-paid-app)
How about if I have a feature within such an app that accesses Google Maps driving directions, using Google's web API? Can I still charge for my app?
The Developer Guide provides you with the info you need:
http://code.google.com/apis/maps/documentation/javascript/usage.html
It's limited to 25 000 map loads per day, as you are making an iPhone App that makes use of Google Maps per user and not through a server, you should be fine unless the user loads a map more then 25.000 a day, then he is being cut of. But this should not effect your commercial intensions of your app when using this API.
Is it possible to use my own map instead of google maps for my app. How can I do that...Where should I look?
I think you need Open Street Maps (OSM). I have a little GPS app (Maverick Pro) on my Droid, and it can use 3 types of maps: google, bing, and "OSM". The latter seems to be what you need:
http://wiki.openstreetmap.org/wiki/Main_Page
You would need a few things:
A source for data about your geography, in the US see the TIGER Line data published by the Census Bureau.
Software to render the geo data into maps that are visually meaningful, for example Mapnik. Use something like OpenLayers to generate the
movability and nice user features people expect.
Software to deliver the rendered maps efficiently to your users, ie TileCache.
There is a nice summary of this FOSS approach here: http://m.alistapart.com/articles/takecontrolofyourmaps
You may want to check out MapTiler, an open source map tiling tool for Google Maps (and other mapping systems) which runs on Windows and Mac OS X.
MapTiler will automate the tiling process for you through a simple GUI wizard, and in addition, once the tiling process is finished, it will also generate a simple HTML viewer where you can see the results immediately.
Custom Map Tile Overlays are quite an advanced topic in the Google Maps API (even the documentation will warn you in red about this). However, I am sure you will be able to use and understand the HTML viewer of MapTiler.
PostGIS, Geoserver, GeoWebCache, OpenLayers, + GeoEXT gets you all the software you need.
Data is up to you and some of the examples above are good ideas.