有没有办法预先填写Firefox OS中的电子邮件正文

时间:2013-09-15 15:42:39

标签: javascript html5 mozilla firefox-os

您好我想知道是否有任何活动,我可以从哪里填写电子邮件活动并从我的程序启动...就像这样...... enter image description here

2 个答案:

答案 0 :(得分:3)

要填充主题,抄送,密送和/或正文,只需将此信息附加到mailto网址:

data: {
    type : "mail",
    url: "mailto:example@example.org?subject=this%20is%20a%20test&cc=example2@example.org",
}

关于如何包含附件,这取决于您希望应用与哪个版本的Firefox OS兼容。

Firefox OS 1.2 开始,您只需将blobsfilenames个对象添加到数据对象中即可:

data: {
    type : "mail",
    url: "mailto:example@example.org?subject=this%20is%20a%20test&cc=example2@example.org",
    blobs: [testBlob],
    filenames: ['test.html']
}

我已更新Firefox OS Boilerplate app以包含一个有效的示例。可以在apps/email/js/app_messages.jsapps/email/js/mail_app.js中找到Firefox OS代码的相关位。

在Firefox 1.2之前new(邮件)活动不接受这些参数,您需要使用share活动:

var sharingImage = new MozActivity({
    name: "share",
    data: {
        type: "image/*",
        number: 1,
        blobs: [blob]
    }
});

Firefox OS Boilerplate包含share activity

的工作示例

显示附件仅限于1.1版中的共享活动的相关代码位于apps/email/js/mail-app.js

答案 1 :(得分:2)

根据我可以挖掘的内容,似乎有两种方法可以打开电子邮件应用程序的撰写窗口并填充字段:

1。常规电子邮件链接

您可以在mailto链接上传递subject,body,cc,bcc字符串作为查询URL参数,例如:

<a href="mailto:mail@example.com?subject=foo&body=bar>email link</a>

使用此方法,您将无法填写附件。

要填写文件附件,您需要使用第二种方式......

2。网络活动“分享”

共享网络活动会询问用户哪个应用程序接受了她想要选择共享文件的共享活动,此活动是图库应用程序用来共享图片的内容,如果选择了电子邮件应用程序,它将根据您传递的参数填充撰写消息窗口。

如果查看电子邮件应用的源代码,您会看到on Firefox OS 1.1(v1-train分支)共享活动的活动处理程序接受2个参数:data.blobs和data.filenames。更高版本(如Firefox OS 1.2)也支持url参数,该参数可以将其他字段subject,body,cc,bcc作为查询字符串的一部分。