如何在 Cordova 应用程序中打开电子邮件文件?
How to open an email file in a Cordova app?
我想将电子邮件文件下载到 cordova.file.cacheDirectory
并在默认电子邮件应用程序中打开它们。我正在使用 Cordova File Transfer Plugin for the download and the File Opener Plugin 在默认应用程序中打开。下载部分工作正常,但是 File Opener 插件出现以下错误:
Error status: 9 - Error message: Could not handle UTI
我要打开的文件是 MIME 格式的(.eml 扩展名),我使用的 MIME 类型是 message/rfc822
:
function openFileWithDefaultApp(fileEntry) {
var fileUrl = fileEntry.toURL();
cordova.plugins.fileOpener2.open(
fileUrl,
'message/rfc822', {
error: function (e) {
console.log(
'Error status: ' + e.status +
' - Error message: ' + e.message);
},
success: function () {
console.log('file opened successfully');
}
}
);
}
我错过了什么?
P.S。此代码可完美处理 PDF 文件。简单地切换到电子邮件文件会导致此问题。我想知道 .eml 文件是否有 "default app",或者我是否必须切换其他格式?一种可能性是将电子邮件转换为 PDF,但这会丢失附件。因此这不是可取的。
如果没有特定的应用程序(例如 Klammer 或 'EML Viewer'),无法在 iOS(参见 https://discussions.apple.com/thread/3709613?start=0&tstart=0)上打开 .eml。
另一种方法是在服务器上将 .EML 转换为 .PDF,对此可能有 OS 选项(例如 https://github.com/nickrussler/eml-to-pdf-converter)。
我想将电子邮件文件下载到 cordova.file.cacheDirectory
并在默认电子邮件应用程序中打开它们。我正在使用 Cordova File Transfer Plugin for the download and the File Opener Plugin 在默认应用程序中打开。下载部分工作正常,但是 File Opener 插件出现以下错误:
Error status: 9 - Error message: Could not handle UTI
我要打开的文件是 MIME 格式的(.eml 扩展名),我使用的 MIME 类型是 message/rfc822
:
function openFileWithDefaultApp(fileEntry) {
var fileUrl = fileEntry.toURL();
cordova.plugins.fileOpener2.open(
fileUrl,
'message/rfc822', {
error: function (e) {
console.log(
'Error status: ' + e.status +
' - Error message: ' + e.message);
},
success: function () {
console.log('file opened successfully');
}
}
);
}
我错过了什么?
P.S。此代码可完美处理 PDF 文件。简单地切换到电子邮件文件会导致此问题。我想知道 .eml 文件是否有 "default app",或者我是否必须切换其他格式?一种可能性是将电子邮件转换为 PDF,但这会丢失附件。因此这不是可取的。
如果没有特定的应用程序(例如 Klammer 或 'EML Viewer'),无法在 iOS(参见 https://discussions.apple.com/thread/3709613?start=0&tstart=0)上打开 .eml。
另一种方法是在服务器上将 .EML 转换为 .PDF,对此可能有 OS 选项(例如 https://github.com/nickrussler/eml-to-pdf-converter)。