繁体   English   中英

如何在Cordova-plugin-smtp-client Meteor Mobile App上找到错误

[英]how find Error on Cordova-plugin-smtp-client Meteor Mobile App

您好,我使用cordova插件cordova-plugin-smtp-client,我的代码设置如下:

var mailSettings = {
    emailFrom: "",
    emailTo: "",
    smtp: "",
    smtpUserName: "",
    smtpPassword: "",
    port: 25,
    subject: “subject here”,
    textBody: “body here”,
    attachmentsInBase64Format: [],
};

        var success = function(message) {
          window.plugins.spinnerDialog.hide();
          alert("Orden Enviada Satisfactoriamente");
        }

        var failure = function(message) {
          window.plugins.spinnerDialog.hide();
          console.log(message);
        }

        smtpClient.sendMail(mailSettings, success, failure);

但我的问题是我总是会得到错误(无效操作),如果有人可以帮助我们如何获取真正的错误,以便我可以解决问题

提前致谢

我也面临着同样的问题。 我发现问题出在尝试发送多个在emailTo字段中寻址的电子邮件时。 如果您发送到单个电子邮件ID,它将成功发送电子邮件。 在SMTPClient.java中,您需要将第41行更改为以下内容:

String[] toArr = json.getString("emailTo").split(",");

这将解决多个电子邮件地址问题。

我有同样的问题。 与权限相关,在具有Android 6 (或更高版本 )的设备中。

我使用Cordova诊断插件解决了问题,在onDeviceReady函数中添加了以下代码:

checkPermission = function () {
        setMyPermission = function () {
            cordova.plugins.diagnostic.requestExternalStorageAuthorization(function (status) {
                switch (status) {
                    case cordova.plugins.diagnostic.permissionStatus.NOT_REQUESTED:
                        break;
                    case cordova.plugins.diagnostic.permissionStatus.DENIED:
                        break;
                    case cordova.plugins.diagnostic.permissionStatus.GRANTED:
                        break;
                    case cordova.plugins.diagnostic.permissionStatus.GRANTED_WHEN_IN_USE:
                        break;
                }
            }, function (error) {
                alert(error);
            });
        };
        cordova.plugins.diagnostic.getPermissionAuthorizationStatus(function (status) {
            switch (status) {
                case cordova.plugins.diagnostic.runtimePermissionStatus.GRANTED:
                    break;
                case cordova.plugins.diagnostic.runtimePermissionStatus.NOT_REQUESTED:
                    setMyPermission();
                    break;
                case cordova.plugins.diagnostic.runtimePermissionStatus.DENIED:
                    setMyPermission();
                    break;
                case cordova.plugins.diagnostic.runtimePermissionStatus.DENIED_ALWAYS:
                    setMyPermission();
                    break;
            }
        }, function (error) {alert(error); }, cordova.plugins.diagnostic.runtimePermission.READ_EXTERNAL_STORAGE);
    };

    checkPermission();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM