2017-04-23 68 views
1

我想使用不同的郵件客戶端從iOS應用程序發送電子郵件。它是一款商業軟件,所以Citrix的安全郵件客戶端無論如何都會被安裝。iOS使用自己的應用程序不同的郵件客戶端? (思傑)

我知道我可以使用URL方案來打開一個不同的應用程序 - 但我的情況下,我需要添加一個特定的附件到郵件。

是否可以安全郵件客戶端添加到所有QLPreviewControllers(我在哪裏能顯示的文件發送到用戶?)

或者我可以只是簡單的做一個自定義按鈕,打開安全郵件客戶端的URL方案?

因此,在這種情況下:

if let 
    urlString = "mailto:=ctxmail:\(toEmail)?subject=\(subject)&body=\(body)", 
    url = URL(string:urlString) { 
    UIApplication.shared().openURL(url) 
} 

正如在這裏看到:

https://docs.citrix.com/en-us/mdx-toolkit/10/xmob-mobile-app-policy-defaults/xmob-mdx-policies-ios.html

+0

對於它的價值,你的問題對我來說似乎相當有效;-) Upvoted! –

+0

謝謝:) ive在網上搜索了大約1個小時 - 並沒有解決方案,我怎麼能夠實現它到所有QLPreviewControllers(例如,只是更改默認郵件客戶端) – derdida

回答

1

我建議你提到的自定義URL方案,假設我們可以解決該附件要求。這可能是一個更好的面向未來的解決方案,因爲您不會依賴於特定的API行爲。

由於iOS的10系統提供了內置的應用程序之間後退按鈕,所以你的UX不應該受到這樣的設計決策(即太多,有單一的水龍頭用戶可以回去你的應用程序)。

+0

但我沒有找到任何信息,如果它可能添加安全的郵件客戶端(或任何其他第三方郵件客戶端)到QLPreviewController(它會自動從Apple打開默認的郵件應用) – derdida

+0

而我的第二個問題:似乎mailto:不支持添加附件 – derdida

+0

也許您可以使用[deep linking ](https://www.programmableweb.com/news/how-to-implement-deep-linking-ios/how-to/2015/07/14)?當然,假設Citrix郵件應用程序支持這種功能...... –

相關問題