2017-09-13 51 views
3

我已经打开Outlook应用程序并在其中发送文件。我能够打开Outlook并设置为,主题和正文,但不知道如何在路径附加文件中的文件目录 该文件是如何在Outlook中以编程方式快速添加附件3

var paths = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true) 
    let documentsDirectory = paths[0] 
    let fileName = "supportdata.log" 
    let logFilePath = (documentsDirectory as NSString).appendingPathComponent(fileName) 

let scheme : String = "ms-outlook://[email protected]&subject=Support data &body=Please find the attached file" 
    if let url = URL(string: scheme) { 
     UIApplication.shared.open(url, options: [:], completionHandler: { 
      (success) in 
      if (success) 
      { 
       print("Open \(scheme): \(success)") 
      }      
     }) 
    } 
+0

请参阅此链接以获取正文中的附加图片:https://stackoverflow.com/a/44098422/4876245 – Hiren

+0

您可以将上传文件的链接/网址附加到谷歌驱动器中,作为补救措施而不是文件本身 – SACn

回答

4

可悲的是,这是不可能的。有两个主要问题:

  1. 您deeplinking到一个应用程序,这意味着发送设备上的消息到另一个应用程序,实际上是同一个正常的URI用GET方法参数字符串。仅字符串,不能发送主要数据/文件。下面的网址方案仅供参考。它和你所用的一样。尽管我认为你在ms-outlook://字符串中缺少'='。

    ms-outlook://compose?to=%@&subject=%@&body=%@

  2. 的iOS与应用程序沙箱相当严格的,你无法将本地文件传递到其他应用程序,除非他们是在相同的应用程序/文件域(例如你是这两个应用的所有者)。有几种替代方法可用于淡化格式,但与此方案无关。即使你可以这样做,微软也需要支持这种文件附件功能,但事实并非如此。可悲的是,除了要求微软添加该功能之外,我们无能为力。

但是,如果你想在苹果邮件应用程序中这样做,那肯定是可行的。

相关问题