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