2016-11-01 5 views
0

Я продолжаю получать эту ошибку с MailCore2.Как исправить сообщение «Использование незаявленного идентификатора» '', используя MailCore2?

Использование необъявленный идентификатор 'сообщение'

Как это исправить?

Вот мой код. Я не уверен, что я делаю неправильно.

- (void)viewDidLoad { 
    MCOIMAPSession *session = [[MCOIMAPSession alloc] init]; 
    [session setHostname:@"imap.gmail.com"]; 
    [session setPort:993]; 
    [session setUsername:[UICKeyChainStore stringForKey:@"username"]]; 
    [session setPassword:[UICKeyChainStore stringForKey:@"password"]]; 
    [session setConnectionType:MCOConnectionTypeTLS]; 
    MCOIMAPFetchContentOperation *operation = [session fetchMessageByUIDOperationWithFolder:@"INBOX" uid:message.uid]; 
    [super viewDidLoad]; 
    // Do any additional setup after loading the view, typically from a nib. 
} 
+0

Там: 'message.uid' Откуда появляется сообщение? – Larme

+0

Ошибка довольно ясна. Нет такой переменной, как 'message'. – rmaddy

+0

Я получил этот код от [здесь] (http://stackoverflow.com/a/20074767/6763186). Какой тип переменной будет «сообщение»? – Boot

ответ

0

Вы используете вызов функции «fetchMessageByUIDOperationWithFolder», что означает: получить одно сообщение с определенными UID из конкретной папки. Вот почему вам нужно указать папку и UID сообщения, которое вы хотите получить.

Ваша папка установлена ​​в «INBOX» - это нормально. Но ваше переменное «сообщение», которое должно иметь значение для «uid», не определено. Знаете ли вы UID сообщения, которое вы пытаетесь получить здесь? Затем вы можете просто указать переменную со значением для вашего UID в вызове функции после части кода «uid:»

Примечание: кажется маловероятным, что в вызове 'didLoad' вы хотите получить только одно сообщение , если это не вызов didLoad для ViewController, который просто отображает одно сообщение. Вам все равно нужно указать значение для UID сообщения, которое вы хотите получить в свой код.