在Firefox OS中获取用户的电话号码

时间:2014-12-06 16:46:58

标签: phone-number firefox-os

有没有办法在Firefox OS中获取用户的电话号码?

如果是这样,我们将不胜感激。

3 个答案:

答案 0 :(得分:3)

根据Mozilla的app permissions page,有一个名为“phonenumberservice”的许可,但没有相关信息。无论如何,permision列在“内部(认证)应用程序权限”下,这意味着,只有“系统级应用程序和Mozilla /运营商/ OEM创建的默认应用程序”才能使用它。

答案 1 :(得分:2)

使用Firefox 2.0,您应该能够使用Mobile Identity API: https://wiki.mozilla.org/WebAPI/MobileIdentity https://bugzilla.mozilla.org/show_bug.cgi?id=1021594 我相信许可是:

  

“权限”:{       “mobileid”:{}}

这是特权。

答案 2 :(得分:1)

因此,正如@Jason所说,Mobile Identity API提供此功能,不仅适用于认证,还适用于特权应用程序。所以它不再只是OEM。

Mozilla Wiki网站显示API:

dictionary MobileIdOptions {
    boolean forceSelection = false;
};
partial interface Navigator {
    Promise getMobileIdAssertion(optional MobileIdOptions options);
};

该网站还为此提供了示例代码框架:

function verifyAssertion(aAssertion) {
    // Make use of the remote verification API
    // and return the verified msisdn.
    // NB: This is necessary to make sure that the user *really* controls this phone number!
}

// Request a mobile identity assertion and force the chrome UI to
// allow the user to change a possible previous selection.
navigator.getMobileIdAssertion({ forceSelection: true })
.then(
    (assertion) => {
        verifyAssertion(assertion)
        .then(
            (msisdn) => {
                // Do stuff with the msisdn.
            }
        );
    },
    (error) {
        // Process error.
    };
);

要使其正常工作,您需要在清单文件中添加mobileid权限,例如像这样(我编写说明):

"permissions": {
    "mobileid": {
        "description": "Required for sending SMS for two factor authentication",
        "access": "readonly"
    }
}

PS:我做了这个答案,因为大多数答案都已过时,而那些答案已经过时,并不包含所有有用的信息。

<强>参考文献: