iOS & Android - Location contains coordinates - android

Is there any way to see, if certain coordinates are included in a CLPlaceMark?
More specifically, after I get user's A location and know in which city he/she is, I need to have another user's B coordinates and check whether they're part of user's A city...
Any ideas?

Were would you be doing the compare? The google geocoding / reverse geocoding api is available for android, ios, and a simple web api. If you use the same service for all clients, that should provide a consistent location name which you could to check if any two users are in the same city.
It would probably be simplest to just use the web api for all cases.

Related

Real time location sharing with Android

What I need to do is share location from one android device and show it on another device(not necessarily android, even web would be fine). I can think of following solutions as of now.
Use GPS to get latitude and longitude from android device and send it to a server after fixed intervals(eg. 5 sec) which will store it in database(Can we use firebase for this purpose instead of writing full server side code from scratch?). The client which needs to show the location can now request data from server every 5 secs and plot the location on google map. My question is, is this approach scalable?
Is there some Google API that allows real-time location sharing out of the box? I tried searching for it but couldn't find anything like that. Does something like that exist?
Yes, you can use Firebase realtime database for sharing the location.
No, there is no such thing as far as I know.
You may use the Google Places API for Android. For example, if you wanted to get a latitude/longitude based on a user inputted address, you could use the Autocomplete service:
https://developers.google.com/places/android-api/autocomplete
I don't think you will have the scalability issue you imagine, because the strain for finding coordinates would be on a Google server, not yours, as well as the mobile device of your users. You would only need to worry about storing coordinates in a central database somewhere.

Using google maps api to get the location of the users and other users in the vicinity

So, I am thinking of creating this app which is based on the location, (not a dating app) for android, and I got stumbled on a question, can we use google maps api to get the location of the current user using my app(i know we can do the first one) and then based on that location, find the other users using that app in the same vicinity, like in 1-5km's or some distance, can we do that? If so, can someone give me rough idea on doing that? Like where should I get started and everything, because I am a newbie and currently in the "learning" phase of android. Just the rough Idea will be enough.
Any way Android devices unable to communicate on air in such way. You will need server. And you will need get GPS coordinates of your users, send them to server periodically. Filter last coordinates on server side, and by user's request send back list of coordinates people near you. And with use of Google Maps API (or another map service) show them to user. Its in general.

Get location of other people in Google Maps

I'm developing an Android app that tracks a number of people through GPS with their legal consents.
For some reason, I can't seem to find any related topics in Google or maybe I just can't construct the right words.
Google Maps and others are already setup. I only need the approximated LatLngs and some basic infos from those people in-track.
Where do I start? or any recommended links?
If you're tracking multiple people with their consent, then I'm assuming that your app is running for each of the users on their individual device(s). If that's the case, use the Android geolocation API to get the device's LatLong and publish it to a backend on the cloud periodically (say every minute or so to avoid too many writes to the backend). You can use a key/value storage to store the coordinates, where the keys are the user identifiers, and the value is the last lat/long (I'd also suggest storing a timestamp for the last update to allow for identifying stale data).
You can then query/subscribe to the backend to retrieve the last lat/long of (a) specific user(s), and then use it to create a custom marker on the GMap API.
We're working on a platform that uses a similar logic but for a different use-case, calculating proximity to specific locations and providing actions based on the proximity.
I hope this helps. We're using Ionic/Angular for our build platform so we're using PhoneGap API's to access the GeoLocation services of the device.
As far as I know you can do below things,
If the two uses have the same application, they should push their location (obtained from the Cell ID or GPS) to a Web Server (which you will handle). You can then exchange the location coordinates using your web-service.
For reference, have a look at this link :
http://msdn.microsoft.com/en-us/library/ms980225.aspx#v35go_topic2
Another the thing which I want to recommend you why don't you try to do this using google+ apis. Little googling will help you.

How can I verify / trust the location of an iOS or Android device from the server?

I am writing the server to back a location-based app for iOS and Android. The app requires that we verify both the identity of the user and their location. I know how to do the former, but not the latter.
Is it possible to verify that the lat/lon the client is sending me is in fact the device's best estimate of the its current location? I'm worried about a malicious client spoofing a location and gaming the system.
CLARIFICATION: I would like to know how a server can trust, through some kind of verification process, the locations it is sent.
I can figure out how to get the user's location from the device. For example, on the Android platform my app would register to receive android.location.Locations, pull out the lat/lon, and send it to the server.
But how do I convince the server that I didn't just make it up? From the server's perspective, why should it believe, when given a lat/lon, that the user is actually there (or close to there given the accuracy)?
Perhaps there's some way of signing the data?
How do the servers for apps like foursquare and Facebook verify that the location data they're being given isn't being faked?
Write your own android or iOS client. As I am working on android it is very simple code. You need to write one service which runs on given period of time. This service will fetch the location. By this you will be sure that what ever lat/long you are receiving is only by your code. Now next point is accuracy. You can use criteria class in android. You can define your own criteria for fetching location.
Write service in Android and iOS that post the current lat/long periodicaly to the server.
And Also write code that fetch the lat/long periodicaly from the server and manipulate it to the Android or IOS map.
Enjoy. :))
From what I can tell, I don't believe it's possible to detect location spoofing on iOS when done using Xcode and GPX files to simulate location. All apps, even the iOS Map's app will believe your location is whatever it is set in the GPX file used to simulate your location via Xcode.
More info on this method: http://www.neglectedpotential.com/2013/04/spoofing-location-services-in-ios/

Tracking a mobile number using GPS

I am trying to develop an application in android using eclipse .
This application is like finding the friend location and directions using android mobile .
Now my idea to do this is in three steps :
1. tracing the mobile number of friend if he is having the GPS connectivity .
2. then putting that location(latitude, longitude) in Google maps with your location .
3. Google maps gives us the directions and this way we get it (using Google Map key ).
2nd and 3rd steps are done but the I am not able to figure out how to do the 1st part .
Sudhanshu
The user that you want to track needs to install and run an application, that regularly posts the GPS coordinates to your server.
There is no direct support for Step 1, due to obvious reasons.
I would suggest that you use a more legitimate way, by using the Google Latitude api.
tracing the mobile number of friend if he is having the GPS connectivity
IMHO the easiest and best way is to
generate a uniqueID per install.
read the location of that user at some regular interval
and posting the GPS coordinates to your server from the client application.

Categories

Resources