我正在开发一个Mozilla Thunderbird插件,需要获取用户的电子邮件地址。
问题:如何检索此地址?
我会在JavaScript中使用它。
答案 0 :(得分:1)
首先应该记住,用户可以拥有多个电子邮件地址(来自多个帐户,甚至是一个帐户的多个身份),您必须决定自己感兴趣的是哪个。
注意:可能存在下面描述的更简单的方法,例如:现有Thunderbird代码中的辅助函数。您可以尝试搜索comm-central
您必须以nsIMsgIdentity
获取您感兴趣的身份。它具有email
属性,电子邮件地址为字符串。
获取所有身份的一种方法应该是通过nsIMsgAccountManager
的allIdentities
(没有对其进行测试)。
使用以下代码获取nsIMsgAccountManager
:
Components.utils.import("resource:///modules/mailServices.js");
let accountManager = MailServices.accounts
如果您有nsIArray
nsIMsgIdentity
,则可以使用以下代码循环遍历它们:
for (let identity in fixIterator(identities, Components.interfaces.nsIMsgIdentity)) {
}
一些有趣的界面概述: https://developer.mozilla.org/en-US/docs/Mozilla/Thunderbird/Account_interfaces
一些帐户示例代码: https://developer.mozilla.org/en-US/docs/Mozilla/Thunderbird/Account_examples