由于 URL,Cordova Ionic 电子邮件插件无法在 iOS 9 上运行

标签 cordova ios9 cordova-plugins

我正在使用email composer plugin对于我的 ionic 应用程序,我在 iOS 9 上遇到问题,无法使用外部电子邮件应用程序。我尝试将以下内容添加到 plist,因为它是一个 url 方案,但这似乎没有帮助。

<key>LSApplicationQueriesSchemes</key>
    <array>
        <string>mailto</string>
    </array>

xcode 给出错误:

2015-10-06 22:10:45.037 NSP[1830:29571] -canOpenURL: failed for URL: "mailto:<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="acd8c9dfd8ecd8c9dfd882c8c9" rel="noreferrer noopener nofollow">[email protected]</a>" - error: "(null)"
2015-10-06 22:10:45.044 NSP[1830:29571] -canOpenURL: failed for URL: "mailto:<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="433726303703372630376d2726" rel="noreferrer noopener nofollow">[email protected]</a>" - error: "(null)"
2015-10-06 22:10:45.047 NSP[1830:29571] -canOpenURL: failed for URL: "mailto:<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="89fdecfafdc9fdecfafda7edec" rel="noreferrer noopener nofollow">[email protected]</a>" - error: "(null)"

是的,单次调用出现了 3 个错误。调用代码如下:

$cordovaEmailComposer.isAvailable().then(function () {
                $cordovaEmailComposer.open({
                    to: [], // email addresses for TO field
                    cc: [], // email addresses for CC field
                    bcc: [], // email addresses for BCC field
                    attachments: [], // file paths or base64 data streams
                    subject: item.name, // subject of the email
                    body: item.name + " download link: " + item.link, // email body (for HTML, set isHtml to true)
                    isHtml: false, // indicats if the body is HTML or plain text
                }, function () {
                    //console.log('email view dismissed');
                }, this);
            }, function () { //Not available
                MessageBox.ShowAlert("Unavailible", "Email is currently unavailable on this platform");
            });

有什么办法可以解决这个问题吗?它在 Android 和早期版本的 iOS 上运行良好,或者这是我无法修复的插件问题?一切都更新了。可能的解决方法或其他插件可以实现此功能?我尝试了解决方案here但我认为这与我的问题无关。

最佳答案

我遇到了完全相同的问题。

添加 LSApplicationQueriesSchemes 但没有运气后,我在实际设备上尝试了它,它确实工作正常。它只是在模拟器中不起作用。

添加 LSApplicationQueriesSchemes 的快速方法是:

cordova 插件添加 cordova-plugin-queries-schemes

关于由于 URL,Cordova Ionic 电子邮件插件无法在 iOS 9 上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32984304/

相关文章:

cordova - 限制上传图片大小相机插件cordova ionic

android - 使用 Phonegap 发送短信并显示在收件箱中

google-maps-api-3 - 将 Action 点击分配给谷歌地图标记,swift 2

ios - 什么是新 iPhone 的透视和流行力量?

android - Cordova Geolocation 插件在 Android 上返回空位置对象

android - 安装失败 'cordova-plugin-firebase' : CordovaError: Uh oh

android - 为 cordova 添加 android 平台时出错

JavaScript Phonegap 打开 PDF 文件

javascript - 如何确保键盘在移动设备上输入 HTML 数字时有负键?

iphone - 结束日期显示错误