I'm not sure how you see my concern as unwarranted. As it stands, it appears that OF on the iPhone under iOS 4 only runs one time. From that point forward, the app moves between being in the background and being in focus. I don't consider moving into focus the same as launching (and it appears that OF doesn't either), and so I don't believe optimization ever occurs after the initial instance. If I'm right, then optimization will never happen again, unless you specifically force OF to quit (versus move into the background) and then relaunch it.
In other words, if I force the app to quit and then relaunch it, I see the message that the database is being optimized. However, if I allow OF to move into the background and then bring it into focus again, I don't see the message. It doesn't matter how many times I move the app into the background and bring it into focus again, I never see the optimization message. However, if I force it to quit, I do see the message the next time OF launches.
This is further evidenced by the fact that OF did not update the due soon/overdue status on one of my tasks this morning until after I forced it to quit. It definitely appears that OF does not handle being brought into focus in the same way that it handles being launched, and as such, several things that normally happen when the app is launched do not happen when the app is brought into focus. This is a big deal.
So, I believe that the app is misbehaving when it is brought into focus after being in the background, and as a result:
1. Sync when launching does not happen,
2. Optimization when launching does not happen, and
3. Due soon/Overdue status is not updated.
I could definitely be wrong, but I'd like to hear and opinion one way or another from OmniGroup.
Last edited by ifonline; 2010-07-02 at 06:10 AM..