javascript - 使用 Phonegap 发送电子邮件

标签 javascript cordova email

我正在使用 javascript 尝试发送包含 HTML 或附件的电子邮件,但这对于 mailto: 是不可能的。所以现在我需要一些其他方式来通过电子邮件发送 HTML 或附件。我发现了phonegap的这个电子邮件编辑器插件,它应该可以像我需要的那样工作,但它根本不会打开电子邮件应用程序,也不会打开您可以选择电子邮件应用程序的提示窗口。

document.addEventListener('deviceready', function () {
    cordova.plugins.email.isAvailable(
        function (isAvailable) {

            window.plugin.email.open({
                to:      '<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="2c58495f586c58495f58024f4341" rel="noreferrer noopener nofollow">[email protected]</a>',
                subject: 'Greetings',
                body:    'How are you? Nice greetings from Leipzig'
           }, callback, scope);
        }
    );
}, false);

function callback(){
    console.log("callback function");
}

function scope(){
    console.log("scope function");
}

最佳答案

确保以下事项:

1。将插件添加到您的项目:

使用命令行导航到您的项目文件夹并运行以下命令:

cordova plugin add https://github.com/katzer/cordova-plugin-email-composer.git

.

2。使用模拟器或设备进行测试:

大多数 Cordova 插件无法使用网络浏览器进行测试,并且需要设备或模拟器可用,请确保在设备或模拟器上测试代码。

.

3。使用远程调试:

在 Chrome 或 Safari 上使用远程调试直接在连接的设备上调试应用程序,看看出了什么问题。

Chrome Remote Debugging: https://developer.chrome.com/devtools/docs/remote-debugging Safari Remote Debugging: http://moduscreate.com/enable-remote-web-inspector-in-ios-6/

.

4。查看电子邮件插件是否可用:

修改您的代码以显示 isAvailable 变量的值,并查看电子邮件插件在您的测试环境中是否可用。

document.addEventListener('deviceready', function () {
    cordova.plugins.email.isAvailable(
        function (isAvailable) {
            alert("is email mobile available? " + (isAvailable ? "Yes" : "No"));
            if(isAvailable){
             window.plugin.email.open({
                 to:      '<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="eb9f8e989fab9f8e989fc5888486" rel="noreferrer noopener nofollow">[email protected]</a>',
                 subject: 'Greetings',
                 body:    'How are you? Nice greetings from Leipzig'
             }, callback, scope);
           }
        }
    );
}, false);

function callback(){
    console.log("callback function");
}

function scope(){
    console.log("scope function");
}

关于javascript - 使用 Phonegap 发送电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37607272/

相关文章:

javascript - 在 SIRV S3 NodeJ 中的文件夹之间移动图像

android - 使用支持 SVG 的 PhoneGap 创建 WebView (Android)

php - 通过 php 和 codeigniter 批量发送电子邮件

c - 在 Mac OS X 上获取默认电子邮件地址

javascript - Material ui TypeError : palette. 主题未定义

javascript - Kendo Grid - 调整列的大小导致网格高度被改变。

javascript - 如何使用 Promise 编写我的函数

ios - PhoneGap 2.0在XCode中不显示console.log

node.js - Socket.io、Node、Cordova,我在客户端接收器中没有收到消息

security - 可以更改为 : field in email header?