我使用expo创建了一个本机应用程序。现在,我正在寻找扩展该应用程序的功能,以便将CSV数据从电子邮件附件导入到我的应用程序中。
我尝试过npm package,但对我来说不起作用(我无法使用Xcode中的npm软件包来构建我的项目)
我认为react-native或expo没有任何共享API
在这张照片中,您可以看到他如何获得将数据导入应用程序的选项。
我知道没有共享扩展API,我认为react-native和Expo都没有用,因为您可以创建应用程序,但不能扩展它。
寻找解决方案或任何其他替代解决方案。
答案 0 :(得分:4)
恐怕世博会无法实现。
首先,您是在寻找一种创建自己的扩展程序的方法,还是只是希望您的应用程序位于右侧屏幕快照中的“使用列表打开”中? (共享和“打开方式”是两个不同的东西。)
如果您只想将您的应用程序列在标准的“使用列表打开”中,则无需使用github.com/alinz/react-native-share-extension,因为它具有不同的用途。引用仓库:
这是一个帮助程序模块,它将react native作为引擎来为您的应用程序驱动共享扩展。
因此,使用该程序包,您可以使用react native来创建自己的共享扩展名
要使您的应用进入“打开列表”,您需要转到目标设置并根据屏幕截图(例如MS word)对其进行更改。进一步了解here。但是,恐怕您如果不退出就无法通过Expo。
如何在react-native中获取文件的url?您需要确保libRCTLinking.a
在Xcode的Link Binary with Libraries
中(可能已经存在)。然后,您可以按照docs并调用Linking.getInitialURL
来获取文件URL。然后,这实际上取决于您要对文件执行的操作。如果您需要一些复杂的东西,则可能需要编写本机代码。如果仅要将文件上传到某些服务器,则可以使用在this commit中添加到RN 0.54的Blob支持。 here是一个使用Blob支持的示例。