Hot answers tagged

25

Here are the results of my brief research on this Issue: ArcGIS runtime for Android. Seems to be oriented towards showing ArcGIS Server's Mapservices. It can show data in an offline mode, by storing tiles in the compact cache storage format, or by using tile packages. OSMDroid A component which can be used to show data from Open Street Maps when on-line, ...


24

I maintain the GPSTest app on Google Play, which is open-source on Github. I'm actively interested in adding Galileo support in the app, but to do this I need to know what IDs the Galileo satellites show up as in the Android platform. And, this requires that there be some agreement between Galileo hardware manufacturers of those IDs - see Is there an ...


14

The correct implementation is: public static void getLocation(double x0, double y0, int radius) { Random random = new Random(); // Convert radius from meters to degrees double radiusInDegrees = radius / 111000f; double u = random.nextDouble(); double v = random.nextDouble(); double w = radiusInDegrees * Math.sqrt(u); double t = ...


13

A few ideas come to mind for building your geospatial programming credentials: Create a legacy of solutions and answers on GISse and Stack Overflow. You will notice that many people on GISse creatively and wisely use this forum to further their freelance work. Create a web page or blog to show potential employers what you know. Some of my favorites, and ...


12

Implemented for Javascript: var r = 100/111300 // = 100 meters , y0 = original_lat , x0 = original_lng , u = Math.random() , v = Math.random() , w = r * Math.sqrt(u) , t = 2 * Math.PI * v , x = w * Math.cos(t) , y1 = w * Math.sin(t) , x1 = x / Math.cos(y0) newY = y0 + y1 newX = x0 + x1


11

Google has built their own vector map rendering engine based on OpenGL ES version 2: https://developers.google.com/maps/documentation/android/start#requiring_opengl_es_version_2 Here's a link about OpenGL ES on Android: http://developer.android.com/training/graphics/opengl/index.html OpenGL lets you leverage the underlying power of the GPU and get ...


10

After three weeks of learning about web maps I finally found answers to all of my questions. They will be more in the form of tutorial since this may help some other beginner. First I learned how standard tiling for EPSG:3857 works. It's nicely explained on http://www.maptiler.org/google-maps-coordinates-tile-bounds-projection/. Key thing is zoom factor ...


10

In short, yes - differential GNSS is now possible on Android, and, as of Android P (on supported devices), real-time kinematic (RTK), or carrier-phase measurements, are also possible. The May 2018 Google I/O video "How to get one-meter location-accuracy from Android devices (Google I/O '18)" has a really good high-level explanation of the current state on ...


9

Ok, with some initial issues cleared out the task is relatively simple. Scale, prepresented as f.ex 1:50000 means that one unit on the map corresponds to 50.000 units in the real world. For a paper map printed a scale of 1:50000 this means that 1 meter on the map corresponds to 50.000 meters in the real world, or to make it easier: 1 cm on the map ...


9

I think the way that we create mapping applications is changing fast and the key to success in this industry is being ahead of that curve. For example 10+ years ago when we wanted a blog we get a shared hosting solution, download a blogging platform like Wordpress or Movable Type install it on the server, buy a domain name, install a theme, bang our head ...


9

Well, most people say OsmAnd is the best for Android. Lacking further details, I can't judge on your particular case. You need to know what features you want: an app for end users or for mappers? support for smartphone or tablet? online or (fully) offline? routing with different profiles? POI search, address lookup? open source / free / commercial app? ...


8

Quantum GIS for Android is one option. http://android.qgis.org Here is more info: http://www.opengis.ch/android-gis


8

Maps.me has map viewing POI search and query, routing and navigation, and it can be used offline. Data is updated frequently and it is available for Android and iOS.


8

Yes, you can use custom tiles with Android Maps API v2 - you can see a fully working example in our OpenTripPlanner for Android app on Github. (You can also download the app directly from Google Play) We support the following tile providers: LyrkOpenStreetMap MapQuestOpenStreetMap Mapnik CycleMap Google (normal, satellite, hybrid, terrain) Our ...


7

For offline maps using OSM data i find three libraries very much useful. osmdroid : I use this library if i have to work with tiles that are in mbtiles format that i generate using tilemill. There is a bonus library for routing called osmbonuspack that adds lots of routing and POI functionality to this library. mapsforge: I use this library when i need to ...


7

I've done exactly the same thing for the same purposes - creating GIS-based rock climbing guides using GPS points taken with a mobile phone. I collected my points using an iPhone and the iGIS app. What I liked about iGIS was its ability to read/write directly to shapefiles, so you can get your attribute schema all setup outside of the app. Screenshot of ...


7

My favorite app for doing these kinds of things is Locus map free. It can import KML file amongst many other formats, and can work completely offline. If you need a base map, you can either download it within the app (for a fee) or add your own data either in mbtiles, or one of the other myriad formats that it supports.


7

First of all, you need to create a map in "My Maps" (https://mapsengine.google.com/map/). You can import your kml there. You can find more information about the limitations in https://developers.google.com/maps/support/kmlmaps. After that, you can access the map you created from the Google maps app in your device.


7

Android GPS works native in hybrid apps, it just needs some settings within app. I'm absolute amateur with Android apps, I learned how to use Android Studio only for the purpose of writing hybrid Andriod app that uses Leaflet. Below are GPS related excerpts from my hybrid app that worked for me. Manifest: ... <uses-permission android:name="android....


6

One quick and dirty way uses a recursive spherical subdivision. Beginning with a triangulation of the earth's surface, recursively split each triangle from a vertex across to the middle of its longest side. (Ideally you will split the triangle into two equal-diameter parts or equal-area parts, but because those involve some fiddly calculation, I just split ...


5

There is one app called "SHP Viewer" Details please click here


5

If you are 100% sure that requirements are not going to change, and you just need to store the coordinates of the points, then yes, go ahead and save the data in a MySQL database, as two double columns. But if there is even a little chance that the scope can increase, then I'll suggest that you spend some time setting up a PostGIS database and save the data ...


5

Some GPS hardware/subsystems in modern smartphones implement Kalman Filtering and sensor fusion. For example, this is the system log output (edited for relevant portions- full dump is here) from a Samsung Galaxy S3 with Android 4.3 after I fire up the LocationListener, when listening to the GPS_PROVIDER. Here you see the app (GPS Benchmark) listening for GPS ...


5

You can use the saveAs polyfill developed by Eli Gry. It should work on Chrome for Android browser. Check the following example: <!DOCTYPE html> <html> <head> <title>Leaflet GeoJSON Example</title> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link ...


4

Accepted answer and derivatives didn't work for me. Results were very inaccurate. Correct implementation in javascript: function pointAtDistance(inputCoords, distance) { const result = {} const coords = toRadians(inputCoords) const sinLat = Math.sin(coords.latitude) const cosLat = Math.cos(coords.latitude) /* go a fixed distance in a ...


4

There is now a stable version of SpatiaLite for Android as announced by Sandro Furieri on the Google Group: https://groups.google.com/forum/?fromgroups=#!topic/spatialite-users/tnmc-sOK1PM You may also want to check out Bill Dollin's blog post: http://blog.geomusings.com/2012/11/26/spatialite-for-android-available/


4

Very simple answer is: Somekind way to read GPS data. Convert it to Point(' longitude lattitude) format, tool to send it to server side and store it in PostGIS ( you need to add from user, now() to it. Do PostGIS search for mentioned Point 'SELECT users, st_distance(the_geom, point) from somwtable where ST_distance(the_geom, point) < "some sane value". ...


4

This looks like it may well be able to solve your issue: http://www.opengis.ch/2012/11/24/fixed-workaround-version/ UPDATE 03/02/13: I'm now experiencing the same "No qgis data provider..." error when building from source (also on Nexus 7 [Android 4.2]). I've pasted the output of logcat for both the installation and launching of QGIS on pastebin here. ...


4

You could use the "Collector for Android" app - http://blogs.esri.com/esri/arcgis/2013/01/16/operations-dashboard-and-collector-for-arcgis-released/ Or write your own application using the ArcGIS Runtime SDK for Android - http://resources.arcgis.com/en/communities/runtime-android/ In either case, you wouldn't need ArcGIS for Server, but could instead use ...


4

The Basic algorithm is as follows: Geocode the two addresses to get the position for both of them. Pass these two points to a Network Analyst Service, and get the result from them. If you want to stick to the ESRI stack, ArcGIS Online has Geocoding, as well as Network Analyst services available. In the OpenSource Stack, you have several options like ...


Only top voted, non community-wiki answers of a minimum length are eligible