Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xcode 脚本桥在向邮件添加收件人时添加不需要的HTML代码_Xcode_Cocoa_Email_Safari_Scripting Bridge - Fatal编程技术网

Xcode 脚本桥在向邮件添加收件人时添加不需要的HTML代码

Xcode 脚本桥在向邮件添加收件人时添加不需要的HTML代码,xcode,cocoa,email,safari,scripting-bridge,Xcode,Cocoa,Email,Safari,Scripting Bridge,好的,所以这个有点奇怪 我在Safari中有一个HTML页面,我想将其作为电子邮件发送。如果我进入“文件”菜单并选择“此页面的邮件内容”,它将按预期传输,并且看起来是正确的 但是,如果我使用脚本桥将收件人添加到传出邮件,它会为添加的每个收件人在邮件内容区域的顶部添加以下代码。在一个示例中,添加24个收件人后,生成的电子邮件包含以下代码的24个连续重复: <div style=3D"font-family: = Helvetica; font-size: 12px; color: black

好的,所以这个有点奇怪

我在Safari中有一个HTML页面,我想将其作为电子邮件发送。如果我进入“文件”菜单并选择“此页面的邮件内容”,它将按预期传输,并且看起来是正确的

但是,如果我使用脚本桥将收件人添加到传出邮件,它会为添加的每个收件人在邮件内容区域的顶部添加以下代码。在一个示例中,添加24个收件人后,生成的电子邮件包含以下代码的24个连续重复:

<div style=3D"font-family: = Helvetica; font-size: 12px; color: black; text-align: left;">
<br =class=3D"webkit-block-placeholder"></div>
[[mail outgoingMessages] count];
以下是我用于添加收件人的代码:

MailToRecipient *recipient = [[[[mail classForScriptingClass:@"to recipient"] alloc] 
                                   initWithProperties:[NSDictionary dictionaryWithObjectsAndKeys:
                                                       [preferencesData bandName], @"name",
                                                       [preferencesData bandEmail], @"address",
                                                       nil]] autorelease];
    [[mailMessage toRecipients] addObject:recipient];
*编辑*

我已经找到了解决这个问题的方法,但我仍然有兴趣知道为什么在我添加收件人时会将此代码插入到正文中。。。解决方法如下:我在HTML模板的CSS部分插入了以下内容

div {
display:none;
}
因此,显示将忽略html模板中的所有div标记。我仍然有上述代码的24个副本,但它们基本上被忽略了,这解决了我的视觉布局问题


如果有人有更好的解决方案,请告诉我

苹果似乎不允许您访问您不“拥有”或在程序中创建的发送邮件

在上面的代码中,我试图通过使用Safari“网页的电子邮件内容”,从而在Apple mail中创建一条新的发送邮件消息,从而绕过Apple的限制,即不允许您将发送的电子邮件设置为HTML(他们不喜欢您做的其他事情)

然后,我试图通过为变量分配一个引用来控制该消息,如下所示:

mailMessage = [[[mail outgoingMessages] objectAtIndex:0] autorelease];
一项研究表明,尽管以下代码:

<div style=3D"font-family: = Helvetica; font-size: 12px; color: black; text-align: left;">
<br =class=3D"webkit-block-placeholder"></div>
[[mail outgoingMessages] count];
正在返回正确的值1

所以从理论上讲,我根本无法将收件人添加到Safari创建的HTML电子邮件中


我无法理解为什么它有时有效,而其他时候不起作用。但当它工作时,它也会在代码体中添加格式化标记。我怀疑这只是一个未被发现的bug,因为它根本不应该工作。

这听起来不像是正确的行为,我建议在Apple(bugreport.Apple.com)上打开一个雷达。