При использовании моста сценариев Apple с Mail для отправки вложения фон сообщения становится черным - PullRequest
1 голос
/ 16 июня 2010

Когда я использую Apple Scripting Bridge для отправки сообщения с вложением, фон сообщения становится черным, что является проблемой, поскольку текст также черный. Код в вопросе:

MailApplication *mail = [SBApplication applicationWithBundleIdentifier:@"com.apple.Mail"];

/* create a new outgoing message object */
MailOutgoingMessage *emailMessage =
[[[mail classForScriptingClass:@"outgoing message"] alloc]
 initWithProperties:
[NSDictionary dictionaryWithObjectsAndKeys:
 emailSubject, @"subject",
 [self composeEmailBody], @"content", nil]];

/* add the object to the mail app  */
[[mail outgoingMessages] addObject: emailMessage];

/* set the sender, show the message */
emailMessage.sender = [NSString stringWithFormat:@"%@ <%@>",[[[mail accounts] objectAtIndex:playerOptions.mailAccount] fullName],[[[[mail accounts] objectAtIndex:playerOptions.mailAccount] emailAddresses] objectAtIndex:0]];
emailMessage.visible = YES;

/* create a new recipient and add it to the recipients list */
MailToRecipient *theRecipient =
[[[mail classForScriptingClass:@"to recipient"] alloc]
 initWithProperties:
 [NSDictionary dictionaryWithObjectsAndKeys:
  opponentEmail, @"address",
  nil]];
[emailMessage.toRecipients addObject: theRecipient];

/* add an attachment, if one was specified */
if ( [playerInfo.gameFile length] > 0 ) {

    /* create an attachment object */
    MailAttachment *theAttachment = [[[mail classForScriptingClass:@"attachment"] alloc] initWithProperties:
                                     [NSDictionary dictionaryWithObjectsAndKeys:
                                      playerInfo.gameFile, @"fileName", nil]];

    /* add it to the list of attachments */
    [[emailMessage.content attachments] addObject: theAttachment];
}
/* send the message */
[emailMessage send];

Фактическое изменение цвета фона происходит во второй последней строке, а именно:

[[emailMessage.content attachments] addObject: theAttachment];

Приведенные выше фрагменты кода взяты из примера кода SBSendMail от Apple. На этом этапе я действительно только внес изменения, необходимые для интеграции с данными из моего приложения. Если я создаю и запускаю пример SBSendMail после его свежей загрузки из Apple, фон сообщения также меняется на черный с выполнением той же строки. Похоже, не имеет значения, какой тип файла прикреплен, где он находится или на каком компьютере или операционной системе используется.

Это может быть ошибка в скриптовом мосту Apple, но кто-нибудь сталкивался с этой проблемой и нашел решение? Или кто-нибудь знает, можно ли изменить цвет фона экземпляра MailOutgoingMessage с помощью моста сценариев?

1 Ответ

1 голос
/ 16 июня 2010

Не думаю, что проблема в вашем коде. Я думаю, что это ошибка, которая недавно появилась. Быстрый поиск в Google по этому вопросу обнаружил:

...