如何使用Ionic Cordova EmailComposer

时间:2015-08-21 13:17:05

标签: javascript angularjs cordova ionic

我正在尝试使用Phonegap plugin found here在我的Ionic应用中发送带附件的电子邮件。此插件的一个功能是将文件或文件作为Base64附加。

电子邮件发送正常,但它从不附加文件,所以它让我觉得我做错了形成我的字符串。具体来说,我正在尝试创建一个CSV,并将其作为字符串附加。

以下是我的电话:

if(window.plugins && window.plugins.emailComposer) {
        window.plugins.emailComposer.showEmailComposerWithCallback(function(result) {
            //success callback
        },
        "Feedback for your App", // Subject
        "",                      // Body
        ["whatever@whatever.com"],    // To
        null,                    // CC
        null,                    // BCC
        false,                   // isHTML
        null,                    // Attachments
        [["filename1","data:text/csv;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/..."]] // Attachment Data
      );
    }

  };

1 个答案:

答案 0 :(得分:0)

我一直在努力解决类似的问题。

在Android EmailComposer source中查看attachmentsData数组的处理如下:

JSONArray fileInformation = attachmentsData.getJSONArray(i);
String filename = fileInformation.getString(0);
String filedata = fileInformation.getString(1);
byte[] fileBytes = Base64.decode(filedata, 0);

因此数据部分应该是纯base64数据。如果你换行:

[["filename1","data:text/csv;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CA...

[["filename1","iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/..."]]

你可能会发现它有效。