I’m working on an app that actually works fine if the device is rooted, but now I’m doing something for non rooted device. At this point I need to use the following (or something like it) in order to download the xtra.bin and unpack in the device >
public static void downloadGPSXtra(Context context)
{
LocationManager locationmanager = (LocationManager)context.getSystemService("location");
Bundle bundle = new Bundle();
locationmanager.sendExtraCommand("gps", "force_xtra_injection", bundle);
locationmanager.sendExtraCommand("gps", "force_time_injection", bundle);
}
Then I use the following to “execute” it >
lto_downloader.downloadGPSXtra(lto_downloader.this);
Ok, I don’t know why (obviously), but it didn’t work. In only got some reply from logcat about the time injection >
D/GpsLocationProvider( 3131): NTP server returned: 1297364952086 (Thu Feb 10 19:
09:12 GMT+00:00 2011) reference: 9750010 certainty: 337 system time offset: -483
80
I know that the “force_xtra_injection” it’s not working due to I don’t see any changes at /data/gps/lto.dat
Well I’m the author of GPS Status, and I really do not do anything else than what you are currently doing. (i.e. calling the sendExtraCommand method. In fact that 3 line of code is also in my program :), I guess that those files are implementation/handset specific. I do not even have /data/gps directory at all on my handset. (Nexus One)