All,
I just discovered a serious problem with the 650 phone power up sequence. I know this is a Sprint issue but not sure if it applies to GSM phones. But here it is:
If you enable the "Enable Local Network Time" option then this is what happens when the phone powers up:
1) 650 sets the 650's time to a random time (mostly in the 1980's from what I can tell)
2) 650 then resets the time to the correct local time.
This happens *every* time you power up your phone. Well it sounds harmless enough until you start to think about what this does to the operating system and running applications:
setting the time backwards causes all pending alarms (system and application) to be killed. So programs that are trying to be nice about re-enabing themselves by setting alarms to wait for a period of time before they enable themselves after a reset will most likely not enable themselves because their alarms were dropped!
any running program that reads the time will get a bogus date and potentially make bad decisions on what to do. Then when the time goes back to normal, that can confuse applications even more.
I believe this can also be the reason for some battery drain issues people are reporting. I can see how a program or a part of the operating system could grab this bogus date and go into a loop and spin for a long time consuming battery as it goes.
Every time you manually powerup your phone you potentiall kill all pending alarms.
I can see that it is also possible to corrupt data and files if a program happens to grab the bogus date and uses it as a part of its operations.
I have seen my phone 3 times in the last day crash during the powerup and my clock was left on a date back in 1982!
I don't mean to alarm everyone but I think this is a searious problem that people need to know about. IMO this option needs to be disabled until a fix is distributed. As I reacll the 600 also had a problem early on this "Enable Local Network Time" but if I recall correctly it was a problem with not getting the right timezone set.
Jeff
I have posted the following program to see if you have the problem.
DisplayTimeChange