The mail.app on the iPhone provides the setting to autofetch all incoming mails in predefined time intervals of 15 minutes, 30 minutes, 60 minutes. If you want to specify a custom value, you currently can do this only with a small change in the mail settings file. It is more than only changing a cronjob to schedule it to another interval 😉
Try the following to do this:
- Connect to your iPhone, e.g. via openSSH or using ibrickr, etc.
- Navigate to your personal preferences folder, i.e. /private/var/root/Library/Preferences — all application store here their user-defined settings in so-called preference-lists (.plist) files.
- Download the com.apple.mobilemail.plist file, which contains all your settings (meta data) for all your mail accounts
- Open the com.apple.mobilemail.plist with a editor of your choice, just search for RecentMessageCount which is the last human-readable attribute before the autofetch interval. The next value is s.th. similar to this: $7DDD8517-1F76-1AB6-AF65-EFCDA4F5C90F R13R05″. The long hex string represents the unique mailbox identifier of your current account which is used system wide. The last value R13R05 encodes the autofetch interval. Typically, it is s.th. like R??R15 or R??R30 or R??R60. Obviously, I changed the last value to 05 to check the mail every five minutes automatically, which is almost real time 😉
- Save the changes and upload the file back to the same location as mentioned above, overwrite the existing file. You may have to restart your iPhone now. You may have to redo these steps if you change your mail account settings via the preferences in the spring board or alternatives. Watching the mail settings in your preferences tab results in an empty interval field and a marked “manual check”, do not hesitate about this, the check is performed as you specified it.
Changing the value to a lower value increases the interval the iPhone checks for changes in your mail account. Doing this results in a higher power consumption because of more wireless connection time and may increase your transported data amount. You should consider this, when changing this value.