2015-10-07 19 views
2

我使用email composer plugin爲我的離子應用程序,我遇到了iOS 9的問題,我無法使用外部電子郵件應用程序。我已經嘗試添加下面的plist,因爲它是一個url方案,但這似乎沒有幫助。科爾多瓦離子電子郵件插件不工作在iOS 9由於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:[email protected]" - error: "(null)" 
2015-10-06 22:10:45.044 NSP[1830:29571] -canOpenURL: failed for URL: "mailto:[email protected]" - error: "(null)" 
2015-10-06 22:10:45.047 NSP[1830:29571] -canOpenURL: failed for URL: "mailto:[email protected]" - 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,但我不認爲這與我的問題有關。

+0

您是否解決了您的問題?如果是這樣,答案是什麼? – JesseMonroy650

+0

不,我沒有,但有人在他們的github頁面上打開了一個問題鏈接到這個問題https://github.com/katzer/cordova-plugin-email-composer/issues/142 –

+0

添加LSApplicationQueriesSchemes並沒有運氣後,我嘗試了一個實際的設備,它確實工作正常。它只是不能在模擬器中工作。 –

回答

1

我有完全相同的問題。

添加LSApplicationQueriesSchemes並沒有運氣後,我嘗試了一個實際的設備,它確實工作正常。它只是不能在模擬器中工作。

一個快速的方式來增加LSApplicationQueriesSchemes是:

科爾多瓦插件添加科爾多瓦 - 插件查詢的方案

1

好的。兩次隨機猜測。如果這些不起作用,我會刪除它。

1)幾天前發佈了對Cordova for iOS9的支持。

嘗試升級,可能會解決您的問題:

https://cordova.apache.org/announcements/2015/11/02/cordova-ios-3.9.2.html

2) '的mailto:' 可能是受了科爾多瓦工具5.x的所需的whitelist規則。您將需要應用整個whitelist或僅應用CSP部分。

HOW TO apply the Cordova/Phonegap the whitelist system

我看不出有任何跡象表明這是新的蘋果ATS保安過濾器下,但它可能是。

要清楚,請將CSP應用到網頁上,然後將whitelist和插件,最終Apple的ATS。該文檔中列出了一些捷徑。

有沒有什麼問題?可以肯定在我的句柄之前使用@,這樣我就能得到消息。

1

我可以證實,當股票插件(無LSApplicationQueriesSchemes)安裝在實際設備上郵件客戶端配置好了,效果很好。我認爲canOpenURL問題主要發生在模擬器上。

甚至在實際的設備上,如果你沒有設置默認的郵件客戶端,那麼你會得到各種奇怪的崩潰(控制器不會在UI視圖中顯示等)。

只需在配置了郵件客戶端的設備上嘗試它。

相關問題