Location API not working for custom/third-party applications - blackberry

I'm trying to write a simple GPS based application for my BB 8800 (with Airtel, India).
But for some reason my code getLocation(timeout) always returns with a non-valid location (only after timing out). I tried different combinations of criteria parameters with no success.
I'm pretty sure that the problem is not with my code because even the BlackBerry GPS demo application does not work. However, my GPS receiver is working fine because "Wayfinder", a maps application that came bundled with my BB, works fine.
To test it further, I tried running SpotFinder and Google Maps. But they did not work either. Google Maps could determine location using cell tower info but not GPS.
Here are some more details about my environment,
1. Phone Model: BlackBerry 8800
2. Carrier: AirTel (India)
3. Device Version: 4.2.168 (Platform 2.3.0.54)
Can my carrier block it? [I spoke with AirTel technical support but they wouldn't budge to help developers]
Thanks In Advance

Some carriers (like Verizon US) blocked GPS for third party applications. Others just enabled GPS for a white list of applications (mostly their own) but deny access to GPS for all others.
It seems your provider is doing such things.

Can your carrier block it? Absolutely, I don't know about in India, but in the U.S. some carriers can and do restrict applications from accessing the GPS if they are not "approved." That seems quite likely given the scenario you described.

Related

PWA needs to access location when no wifi and no cellular

My client wants a mobile-app that can run with no WiFi and no cellular network available. I think that a PWA gives them the most cost-effective way to meet their needs, accept that the app needs to know location even when there is no network available. To do this the PWA would need access to the true-GPS, i.e., the info gathered by the GPS chip talking to the satellites. It's my understanding that a PWA does not yet have this access and there is no date for when we can expect it. Could we buy or develop a native mobile app that delivered the GPS-info to my PWA? I've seen some discussion of this using Cordova, but I would like to avoid diving into that world if I can.
I put my Android into airplane-mode and took it for a walk around the block. The PWA that I had installed on the Android was still able to give me the updated location. So perhaps the discussions and complaints I see on stackoverflow, etc., regarding this not working, are out-of-date. BTW: In the navigator.geolocation options I have:
enableHighAccuracy: true
so hopefully the browser uses this as a hint to use the GPS-chip if available, and not care if there is no network available.

Looking for GPS device with on-board RTK that is easy to interface to from an iOS App

I've been researching a possible iOS-based app, developed in Unity, that would require a high-degree of positional accuracy (centimeters).
I expect I would need to connect, from the app, to an external GPS device using Bluetooth (or similar) and obtain NMEA sentences (or similar) containing location data.
My research has brought me to RTK, which is extremely accurate. From what I've seen already, it seems that normally GPS receivers which offer this operate themselves at normal GPS precision (2-2.5m). The correction to a high-accuracy location happens in software on a connected computer or tablet with a connection to an NTRIP server.
Assuming what I've said is correct, does anyone know of a GPS device that performs this RTK correction on the GPS device itself? Ideally I could just connect with Bluetooth or similar and get NMEA (or equivalent) data with high-accuracy location.
It may also be that I'm thinking about this incorrectly. On iOS, assuming there is an 3rd party app performing the RTK calculations, is there a standard way to obtain that high-accuracy location? Alternatively, are there GPS vendors that supply SDKs that would allow me to get to where I need to go?
Thanks very much,
Kieran
There is a recent module from U-Blox named ZED-F9P which has internal processing and is faster then RTKLib. Check this blog for performance
You can buy a board like ArduSimple's simpleRTK2B with an XBee module for WiFi/Blutooth or something similar from Sparkfun. You could also wait for the development board from U-Blox which is not yet available.

Preventing an iOS app from getting mock locations

Is it possible to make sure that GPS positions an iOS app is getting are real, and they are not fake locations illegitimately provided somehow, for example, by means of another app such as LocationHolic?
Thanks!
You could theoretically do some ip number geo lookup (e.g. How does geographic lookup by IP work?), but that's not entirely reliable (e.g. VPNs), so I'd be hesitant to dispute someone's location on the basis of that. Given that locationholic is for jailbroken devices, perhaps validate location information against ip-derived location info if, and only if, the app is running on jailbroken device. For info re ip number based geo lookup or identifying if a device is jailbroken, I'm expert in neither, but both topics are covered well elsewhere on StackOverflow or can be answered with a google search.
In short, I suspect that locations are reliable on non-jail-broken phones. Regarding "Find My iPad/iPhone" on jail-broken phones, I can't speak to that, but all rules of reliability and security are thrown out of the window on jail-broken devices, so you can't rely on it.

test GPS without service provider

While I found a question asked for android (http://stackoverflow.com/questions/3189188/gps-location-without-service) I couldn't find one for iOS so I thought I'd ask it. Especially since it seems to be possible in Android (see link).
I'm wondering if there's anyway to get location without a service provider. For example, I have access to an older iPhone 3GS but clearly don't want to pay any fees just to test my location services code.
I'm thinking that since location should be determinable via WIFI then maybe the only difference would be the increased precision of GPS. Maybe that'll be enough.
I actually got the answer by posting at Apple's devforums.
Basically, Location Services are independent of GPS - the APIs are identical regardless of device.
Which makes sense. Essentially, the only difference with actual GPS-based location is precision.
What fees are you worried about ? If it's mobile data charges then just switch off mobile data - the gps will still work fine!

Why BlackBerry GPS is slow compared to other technologies (iPhone & Android)

hi all i am working on Application which is bashed on Event according to current location .when my application start i am displaying Event in my ListField according to current location. Application works fine in Simulator after sending Latitude & Longitude manually from simulator.
When i test this app in my device BB storm2 9550, device cant get current location within 3 or 4 second (during Splash screen) . but after some time it get current location successfully .
how can i get my current location as fast as iphone an Android ?
is there any way to get current lat long from device GPS system which we are getting on Refresh GPS .
please suggest me if any one have any idea.
Thanks in Adavance !!!
if you are not getting lat/long quickly then it sounds like you are trying to get the locations using the GPS radio. This would mean it will take time to connect to the satellites . this would also require sky in sight of the phone, ie it will not work indoors.
The quickest way to get lat/longs are
Use cellsite technology( Blackberry supports this in some devices using triangulation)
Use a cellid provider like google location api or opencellid to get the lat/long using the current cell id.
These doesnt drain the battery as much as using the GPS radio so if you can , try using these. Although the lat/long are not accurate as GPS radio lat/longs.
Please check the following for all the info you would ever need for blackberry GPS techniques.
Simple Location API
Location API- start to finish
At a hardware level, BlackBerry devices used to mount Qualcomm's gpsOne chipset, which, in my opinion, is slower than the ones you could find in most recent Android or Apple devices (SiRFstar or Broadcom, etc). Or maybe the BlackBerry OS didn't interface with it in an efficient manner. For whatever reason, I've experienced higher TTFFs in BlackBerry devices than in Android, for a given place. I may be wrong here, it is just an opinion.
I think newer BlacBerries are mounting other chipsets now. And also, as of September 2011, WiFi geolocation service is also available in OS 6.0 and later. Before that, the only location service in BB was A-GPS and celltower (only OS 5.0 onwards).
Some useful links:
Location APIs – Start to finish
Simple Location API

Resources