[英]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.