Flutter - 接收共享意图,与 iOS 共享 PDF

T E*_*T E 3 share file external ios flutter

我们在应用程序中使用了receive_sharing_intent包,但是随着最近 Flutter 的更新以及该包已经有 15 个月没有更新,现在实现的功能不太好用,尤其是在 iOS 上,Android 到目前为止仍然表现良好。

功能:对于存储在设备中或附加到邮件中的每种文档(PDF、txt、xls...),当您与应用程序共享它时,它应该打开它,处理它,并将其存储在我们的数据库。因此,我们使用此处的包来检索外部数据并打开我们的应用程序,并且在 Android 和 iOS 上都是如此。

我们仍然没有找到针对这种特定情况持续一段时间的解决方法。如果您在我继续研究期间找到解决方案,请告诉我。

提前致谢。

T E*_*T E 5

编辑:一个新包已发布,请参阅flutter_sharing_intent

我花了几天时间解决这个错误,终于找到了我遇到的确切问题以及解决方案。

我终于得到了.PDF文件扩展名的错误,路径不正确。Flutter 包receive_sharing_intent内的SwiftReceiveSharingIntentPlugin.swift文件中有一个函数,该函数应该删除文件路径开头的子字符串“file://”,但由于某种原因,我的 PDF 文件路径中仍然有它,所以永远找不到它。

为了解决这个问题,我在 Flutter 代码中使用了“ replaceAll ”方法:

file!.path.replaceAll("file://", "")
Run Code Online (Sandbox Code Playgroud)

我更新了这篇文章的标题以匹配我遇到的问题。