Hello. This is quite a complex issue and I wonder if anyone can help?
S603.1 - Problem reproducible on devices N95, E71. In both Java ME and C++ APIS.
I have a simple app C++ which retrieves the GPS location periodically and sends it over a HTTP connection.
It works pretty well normally, but I get some real issues when the GPRS/3G Network coverage is lost on Vodafone.
It's quite sporadic, but reproducible with normal usage over the course of a few days.
The problem is that HTTP request all complete with HTTP 403 from Vodafone's gateway. However, closing the application and starting it seems to remedy the problem.
This is not reproducible using an Orange or O2 sim.
It's also not an issue with my code, or the target internet server - i've written code in Java and tried with different servers.
I can confirm that I don't get the problem when sending HTTP requests using the simulator positioner plugin.
After a bit of investigation, I came up with the following observations
1. In my Nokia E71. when i swap from an orange SIM to a vodafone. The A-GPS service automatically sets the server to use the "Vodafone live!" access point.
2. Around the point where my HTTP fails, I inspect the state of the connection using S60's Conn. Mng whereby I find the GPRS connection that my app is using as active, but there are around 14 instances of "Vodafone Live!" all listed as "disconnected".
When I set the access point for GPS back to vodafone GPRS (which is what it should be using?). I don't seem to be able to reproduce the problem. Though as I mentioned, it's sporadic. I do not however see the 14 instances of voda live connections in the Conn. Mng.
So the questions i have is
1. Why would a connection persist in Conn. Mng stating "disconnected" - is this just for my information or is there a handle to the PDP context maintained?
2. Why are there 14? Is there a known handle leak in the AGPS implementation?
3. Is there anyway that a misbehaving client using Vodafone live! could interfere with another app using a GPRS access point. What I mean by interfere is that the vodafone might start denying HTTP request based on the action of another client on the same device.