Unable to access iCloud IMAP

I'm having no luck adding my icloud email account to either the Evolution, Geary or Thunderbird clients. They all seem to complain about "IMAP username or password incorrect", or similar, although I have confirmed I use the right password by logging into the web interface at icloud.com with my apple-id credentials.

I'm following the directions in apple's support article, where they themselves sound unsure on what to do (!), e.g.:

Username: This is usually the name part of your iCloud email address (for example, emilyparker, not [email protected]). If your email client can't connect to iCloud using just the name part of your iCloud email address, try using the full address.

...usually?

This support article is basically referred to or reflected in every QnA thread out there (except one that claims that omitting @me.com from the username also works for SMTP - not that @me.com directly applies to my case).

I'll concentrate on Thunderbird since it's easy to test it its UI:

Incoming

  • Host: imap.mail.me.com
  • Port: 993
  • SSL: SSL/TLS
  • Auth: Normal password
  • User: user.name

Outgoing

  • Host: smtp.mail.me.com
  • Port: 587
  • SSL: STARTTLS
  • Auth: Normal password
  • User: [email protected]

Thunderbird tells me "Username or password invalid" (the Geary client does the same).

  • I have tried both [email protected] and just user.name as the username for IMAP and SMTP. I have even tried [email protected] in desperation even though I'm clearly instructed to do otherwise.
  • I have written my password in plaintext and pasted it in.
  • I have tried STARTTLS instead of TLS (Thunderbird edits the port automatically when I change).

I thought I had followed the (unassertive) instructions to the letter, but I must be overlooking something very basic here that I can't see.


Sometimes I get an Error Creating Account alert when trying to connect, doesn't seem very relevant to me though. It has had two different messages:

Incoming server already exists.


[Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIMsgAccountManager.createIncomingServer]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: chrome://messenger/content/accountcreation/verifyConfig.js :: verifyConfig :: line 60" data: no]


Solution 1:

This was long ago but nowadays I would say that the problem is that you need to generate application specific passwords to access your iCloud email from third party applications.

It currently works fine with the Gmail app on Android.