Как я могу отправить почту, используя + (id)queryForUsersMessagesSendWithUploadParameters:(GTLUploadParameters *)uploadParametersOrNil; в iOS?
Мы пытаемся разработать почтовое приложение для iOS, я интегрировал google gmail-api, также вытащил сообщение из своего почтового ящика.
Я поражен, отправляю почту через
+ (id)queryForUsersMessagesSendWithUploadParameters:(GTLUploadParameters *)uploadParametersOrNil;
Как мы можем использовать GTLUploadParameters для отправки почты?
1 ответ
- (void)sendEmail:(WLGmailMessage *)message completionBlock:(void (^)(NSError *))completionBlock
{
GTLGmailMessage *gtlGmailMessage = [[GTLGmailMessage alloc] init];
gtlGmailMessage.raw = message.rawString;
// upload parameter
// GTLUploadParameters *upParam = [GTLUploadParameters uploadParametersWithData:GTLDecodeWebSafeBase64(messageRawStr) MIMEType:@"message/rfc822"];
// query
GTLQueryGmail *query = [GTLQueryGmail queryForUsersMessagesSendWithUploadParameters:nil];
query.message = gtlGmailMessage;
[_service executeQuery:query completionHandler:^(GTLServiceTicket *ticket, id object, NSError *error) {
if (error) {
NSLog(@"ERROR: %@", error);
} else {
NSLog(@"SENT EMAIL");
}
completionBlock(error);
}];
}
- (NSString *)rawString
{
NSMutableString *message = [NSMutableString new];
[message appendFormat:@"From: %@\n", [_fromAddress rawString]];
[message appendFormat:@"To: %@\n", [_toAddress rawString]];
[message appendFormat:@"Subject: %@\n", _subject];
[message appendFormat:@"Date: %@\n", [self _formattedDate]];
#warning input real ID
[message appendString:@"Message-ID: <tmpID>\n"];
[message appendString:@"\n"];
[message appendString:_body];
return GTLEncodeWebSafeBase64([message dataUsingEncoding:NSUTF8StringEncoding]);
}
- (NSString *)rawString
{
return [NSString stringWithFormat:@"%@ <%@>", _name, _emailAddress];
}
Завершить проект здесь