Message.framework

From iPhone Development Wiki
Revision as of 07:01, 21 January 2014 by Zaersk (talk | contribs) (fixing for the sake of uniformity)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Message.framework
Private Framework
Availabile 2.0 – present


Message is the framework that manages mail messages.

Structure of Email messages storage

Email messages are mainly stored in the SQLite3 database ~/Library/Mail/Envelope Index (or anything returned in -[MailMessageLibrary defaultDatabasePath]), and supplemented by the file hierarchy in this directory. The correct database will be used only when you login as mobile.

The database has 6 tables, the main 3 are mailboxes, messages and message_data.

Mailbox

Mailboxes are email-storing "folders" in an account. Each mailbox has an associated URL like imap://user@imap.server.com/INBOX and as://user@server.com/uuid/Mail:DEFAULT. The database records only the number of total, unread and deleted downloaded messages.

Messages

Messages are the actual emails. The metadata are stored in the messages and the actual messages themselves are in message_data, and if they're too big, the file system.