Here is my situation.
Initially gmail authentication through Chilkat failed and after analysing I found that I have to turn ON "allow less secure apps". Then the authentication succeeded.
To avoid turning ON "allow less secure apps" in every gmail account, I followed solution provided in below link.
1) We created a certificate file(.p12).
Through the service account(in developer console) and we have the service account email address as well.
2) I am able to generate accesstoken successfully.
NSString *accessToken = [http G_SvcOauthAccessToken: iss scope: scope subEmail: sub numSec: [NSNumber numberWithInt: numSec] cert: cert];
3) Connecting to "imap.gmail.com mail" server succeeded.
success = [imap Connect: @"imap.gmail.com"];
4) But when I try to authenticate to gmail account using any gmail ID the authentication fails.
success = [imap Login: @"email@example.com" password: accessToken];
Below is the error message I get in imap.LastErrorText.
DllDate: Sep 21 2015 ChilkatVersion: 220.127.116.11 UnlockPrefix: Hello World Architecture: Little Endian; 64-bit Language: IOS Objective-C VerboseLogging: 0 connectInner: connectToImapServer: hostname: imap.gmail.com port: 993 socketOptions: SO_SNDBUF: 262752 SO_RCVBUF: 131072 TCP_NODELAY: 4 SO_KEEPALIVE: 8 --socketOptions ConnectionType: SSL/TLS --connectToImapServer --connectInner Success.
Looks like an authenticate command... getCompleteResponse: idleTimeoutMs: 60000 tlsReadIncoming: Socket operation timeout. Failed to receive more TLS applicaton data. recvUntilMatch: Socket operation timeout. getImapResponseLine: Socket operation timeout. Failed to get next response line from IMAP server. --getCompleteResponse Looks like authentication was NOT successful.. Failed.