I have been trying to use bing maps API's function getCurrentPosition from a mobile device via 3G internet. I was expecting the Samsung SIII, being a high spec device, to work without any problems.
However when the mobile connects over WiFi I am able to get my location whereas when I switch the connection to 3G I do not get my actual location.
The pushpin does point to my house but as I move away from it, it does not react to my position. It's like getting the location of the server hosting the function (which is my computer at my house).
The GPS is on and correctly set on the mobile too.
Moreover, the getCurrentPosition is inside a recursive loop which invokes it every 500ms.
Now I know for sure that bing maps API works mobile devices since I have been involved in a Vodafone organized treasure hunt using tablets. Please guide me to solve my issue.
Thanks,
Justin
The positioning service is directly related to the device and its own implementation to find the position assumed by and from the various method that was used to find the best matching. It does not seem to be directly related to Bing API in this specific case.
In order to improve positioning speed and precision, the different systems can switch to Wifi-Positioning to other method like A-GPS or even cell identification.
If you try to get the information about your position based on your wifi, on Android, we can easily assume that it will used the Wifi-cell as the position that means that the known location would be the one retrieve from various crowdsourced information from your own devices and also others. That said, in WiFi, you will not be moving, you are connected to the Wifi cell without any other information.
If you cannot get your position in 3G, try to go outside so it can use the most precise positioning method (A-GPS) as it appears that phone cell-id is not working in your area.
Related
I was in Scotland with a Canadian phone recently, and to avoid roaming charges I had my cellular data turned off throughout the trip. However, the pictures I took still had accurate geotags, meaning my location was still available to my camera apps (even though I couldn't actually see these locations on a map until I got home).
My question is: how would I go about retrieving location data in a situation like that, where I can't actually display a map because there is no internet connection? And, just to improve my understanding, how is the location actually being retrieved? If "cellular data" is off, is GPS still available, or can the location only be calculated using nearby wi-fi hotspots at that point? And finally, if both cellular data AND wi-fi is turned off on a device, can location still be retrieved (i.e. is GPS still active)?
Any info on the subject is welcome - all I am trying to do is handle all possible situations created by the presence or lack of location services and an internet connection in an app where I (if possible) display and store the user's location.
Thanks!
iOS devices that have actual GPS hardware in them can give accurate location data even if there is no WiFi or cellular.
Of course, most map apps require an Internet connection to display a map. But if you have a map app with local map data, then you would be able to see the map with your position even without any Internet connection.
On devices with an actual GPS, location services works just fine with no Internet. It may take a little longer to zero in on your position but it still works normally. Of course on iOS devices with no real GPS, you do need a cellular or WiFi signal to get any position data.
specifically this question is for iPhone only, basically the question is - does iOS location service still give the geo-location (lat, long) when the device has no carrier service neither wifi connection?
Yes it will give you the location using GPS and if the GPS signal is not there it still gives you the old cached location. So in any case it will give you the location.
So far as I know, the latest models (since 3? I think?) have an actual GPS so as long as you can "see" open sky it will be getting lat/long. Whether or not the related apps are able to function (whether it can load the maps, for instance) is another matter entirely.
Question community. I am currently doing this application where I would like to record a position on the mapview based a coordinate point which is constantly being updated by a server application. The server application sends out this information using wifi and I can see that I am updating the position of my an annotation as the data comes in. The problem comes up when I try to zoom into the mapview, it seems to get pixelated. I did some trials runs and it turns out that for some reason the iphone does not update the tiles of the mapview because it is trying to get the data from the wifi connection as opposed to the 3g connection.
My question, how (if possible) do I force the mapview to get it's tile updates from the 3g connection. I am aware that I could go the "offline maps" route, however I would just like to see if this can be done.
Thank you kindly.
Are you testing within a closed network where your wifi connection does not reach the outside world? Why can your wifi connection not reach the map tiles? Are you talking about Google tiles? If so then speak to your network admin and ask if you need your proxies to be set up. Basically this is not something that needs to be fixed in your code, it's a network issue. The iPhone will use whatever network it can find to get the info it needs, you need to make sure the networks it finds have internet access.
In my app, I am trying to figure out the location of my app user using WiFi (not GPS because my main area is inside the buildings), can any one please tell me how can I get user location using hotspot of WiFi.
Any basic guide or example is good .
Thanks in advance.
egards
Use Core Location. The Core Location framework hides the actual device capability from you (more or less) and (depending on the options you set) give you a best estimate for latitude and longitude. I've used the exact same app on an iPhone and iPod touch and have gotten pretty good results with the touch. It won't be as accurate, but it's good enough for most applications.
Check out the Core Location documentation and the "LocateMe" sample code from the developer site: https://developer.apple.com/library/ios/#samplecode/LocateMe/Introduction/Intro.html
Unless you mean to figure out the location of your user in a specific building with known Wi-Fi spots, you'll have to resort to using a IP address geolocation database. There are services, such as that provided by MaxMind, that have a database which you subscribe to for updates. The database maps IP addresses to locations.
This will only get you approximations, so your best bet is to use GPS primarily but IP address as a backup.
I would like to locate the iPhone in a building to build an application with similar features as the iPhone app of the American Museum of Natural History. There is no good GPS reception as there are also rooms in the cellar I would like to cover.
What can save me is that there is good wifi coverage in the whole area, so my idea was to triangulate the position based on the wifi base stations in range, whose positions are known. However I found no public API to find out which base stations are in range.
Questions
Do you have an idea how the app mentioned above manages to get the correct location indoors?
Could one add the wifi base stations manually to Apple's database and use the usual CoreLocation?
Do you have other ideas how to implement it?
Any help is very much appreciated!
Boundary conditions
The indoor navigation is only used during an event to guide guests new to the building, so no complex infrastructure should be installed.
There are approximately 14-18 rooms to be covered. They are in different parts of the building, so wiring everything up would be very costly.
The preferred solution would not require a server backend of any kind and would work with a list of wifi access points and their corresponding locations.
I wouldn't know about 1 and 2. But if you would implement such a thing, turn it around to save a lot of trouble: create your own free-of-charge wifi network, and let the network determine the location, either based on triangulation, or just based on the currently associated access point. Make their signal weak so you have one audible access point per room. Let the app ask a server in what room he appears to be. This will also work for any other mobile/pda/laptop.
As for other ideas: You could use bluetooth to do somewhat the same as you're planning for wifi. You can't do everything with bluetooth, but listing devices seems to be one possibility. So just put a bluetooth device in every room. Bluetooth range is limited by definition.
Another one would be to use the microphone in conjunction with a high pitched sound which identifies the room, but that would cause trouble with dogs (for blind people), attract bats, and repel mice at the same time. Better focus on an RF based solution ;-)
You can also check out Navizon's indoor positioning system:
http://www.navizon.com/product-navizon-indoor-triangulation-system
Their system is able to locate iPhones by using the WiFi signals transmitted by the device and doesn't require an app to run on the phone to locate it. It can locate any other WiFi enabled device for that matter.
Check out wirelesswerx.com They seem to be doing indoor location using Bluetooth and it looks like they can do permanent install or temporary for events.