Skip to content Skip to sidebar Skip to footer

Use Android GPS To Detect And Connect With Other Phones

So I asked something similar yesterday and did receive an answer to my question, however I don't really think I asked it correctly and therefore didn't receive the exact informatio

Solution 1:

Instead of frequently posting locations to an external server, couldn't the GPS realize other things broadcasting a GPS signal at a very specific time and send/receive data from them?

The only things that are "broadcasting a GPS signal" are satellites.

We would like to accomplish this without the use of an external server.

You have no choice but to use an external server, whether you like it or not, both for discovery and for later communication.

Do you guys know of anything that can fit exactly what I need that already exists?

Foursquare, Google Latitude, Yahoo Fire Eagle, and so on.


Solution 2:

To do this via GPS, you would have to have all the phones frequently posting their locations to a network server, which could then inform them of others nearby.

Needless to say this would be opt-in only!

And it may have negative consequences for battery life, unless you make it update infrequently, which may limit its usability.

The advantage of having an explicit trigger action to both phones is that they only need to query the GPS and inform the server to find each other by location when they've both been triggered.


Solution 3:

You would probably have to author your own application - then you could do this server-side and push things. If you're trying to push data to random Android phones - you're out of luck. Most people aren't going to want this, and probably aren't going to have the apps necessary to receive and understand it. With Bluetooth networking you'd need authorization, and most Androids don't have a capability to transfer random data by Bluetooth out of the box (though you certainly can get software to do it).

Honestly, malware and tracking are the reasons this really isn't possible, but even if they weren't, you would still need an application on the receiving devices that understand what you're sending them. And if you're widely spread enough, you'd probably want to send it to a server to disseminate anyway (for the transmitting phones bandwidth costs at least).


Solution 4:

Develop a server application that your android app logs into. Send the GPS location every time the phone moves over a present distance. Either send a query request to the server to ask it if any other phones are in range, or get the server to inform the phone of a new device in range.

You may run into server scalability problems, so thats something to think about. Also, this would be a big battery drain, and so your users may not be too keen to run it, not to mention the privacy element.


Solution 5:

You need to rethink what you're trying to do. Android devices don't "transmit" any GPS signal, they are simply receivers, with signals from satellites. So the phone can easily get a location for itself, but the location of other devices is very, very private information. To get access to location for other phones, you either need to be on the same network as them (bluetooth, wifi), or you need them to use a server-based service to send locations to, like Google Latitude.

I'd be highly unlikely to sign up to a service like that. My location is very private, I share it with some people, but I cannot seem myself openly sharing it with an app, without a very, very good reason.

It seems to me that you need to build a server-based application, e.g. on Google App Engine, have people sign up, and agree to their location being sent to that server, so other phones running your app can access that information from the central store.


Post a Comment for "Use Android GPS To Detect And Connect With Other Phones"