Ever since I upgraded my iPhone to IOS4 (the latest version of the phone's operating system), the Mail application has been flaky when it comes to syncing mail messages via IMAP. Duplicate messages, empty/blank messages, messages dated 12/31/1969, messages that are deleted and then re-appear, and so on.
At first I thought it might be my phone hardware, which had been cursed from the beginning (a story for another time), but after that phone died and Apple replaced it with a brand new one with fresh firmware and settings, and it STILL happened, I was convinced it's the software on the phone. Other people are having the same issue all over the place. But it can be hard to make Apple believe this - said the Apple Genius Bar worker at the Apple Store in Chicago, "they're probably all just using the phone wrong." Wha?
So I decided to look at the source code of the iPhone mail program to see if I could find the problem, but Apple doesn't make that source code available.
So I decided to turn on the Mail program's debugging options to have it output the results of the IMAP sync sessions, but it turns out the Mail program doesn't have any debugging options.
So I decided to look at the log files on the phone's operating system to see if they reported any software issues I could address, but actually I can't look at those log files even if they exist because Apple doesn't let you look behind the scenes.
So I decided to report the issue on the project mailing list that all of the iOS4 developers monitor, and it turns out that no such mailing list exists.
So I decided to go report the issue to Apple to see if they can help.
After submitting a case online, I was called back in 27 seconds (FAST!) and talked to Chris from Apple, who works in iPhone support. He was very good at gauging my level of tech savvy and talking to me at an appropriate level, so he quickly confirmed that I'd already done all of the normal troubleshooting steps they recommend. I asked him if this was a known bug, and he said not as far as he could tell.
Chris then connected me with Shawn who is a senior adviser on the iPhone tech support team. Shawn told me that in fact I had identified a known bug with the iOS4 firmware. VINDICATION! He said that they've mostly been seeing it in gMail syncing issues, but that they're aware of it as a wider IMAP issue.
I asked Shawn for the unique identifier number for the bug so that I could go follow the progress of a fix on their public bug tracking system, but it turns out that Apple doesn't publish information about known bugs until they're fixed.
I asked Shawn how I could learn more information about when this would be addressed or other recommended fixes in the meantime, and he said I would just have to wait and see.
(Chris and Shawn at Apple were excellent tech support reps within the confines of what they're allowed to do and say.)
Bottom line: these are the horrors of using a closed-source, proprietary product for a key piece of tech functionality in my life.
What Apple can do better:
- Test its Mail software's IMAP syncing functionality more thoroughly before releasing it to production.
- Publish information about known software/hardware issues BEFORE they're resolved so that people having those issues can see what's up and possibly even contribute to the resolution.
- Train its store Genius Bar workers so that they don't dismiss a legitimate complaint about functionality problems with smiling condescension.
- I'm pushing it here, but hey, it's my blog: release the source code for iOS and related applications.
If you've had this issue with your iPhone, or similar software/hardware troubleshooting experiences with other vendors, feel free to share in the comments.
Update 9/17/2010: After installing iOS 4.1 a week or so ago, all of the IMAP syncing issues seem to have gone away. I've seen a few reports that problems remain for others, but it's clear that this release included some fixes for the mail application that weren't described in the release notes.