簡體   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