React Native - 使用showShareActionSheetWithOptions共享本地映像

Ste*_*ann 6 javascript share ios reactjs react-native

我有一个关于与之共享本地图像的问题showShareActionSheetWithOptions.

这是我的代码:

ActionSheetIOS.showShareActionSheetWithOptions({
  title: "React Native",
  message: "Hola mundo",
  url: '@theme/img/share/share.png',
  subject: "Share Link" //  for email
});
Run Code Online (Sandbox Code Playgroud)

文档:"如果URL指向本地文件,或者它是base64编码的URI,它指向的文件将被加载并直接共享".

但它不起作用.我不确定如何访问或如何获取图像的路径.在我的应用程序根文件夹(index.io.js所在的位置)中,我有一个"src/theme/img"文件夹,其中包含我的所有图像.

在来自react-native的示例中,他们的图像与.js文件完全相同,但这也不起作用.

Rap*_*tor 0

在当前的 React Native 版本(0.49)中,有效的 URL 可以是:

  • ImagePicker从Expo API 中选择
  • 截图通过ReactNative.takeSnapshot('window')

路径看起来像:

/private/var/mobile/Containers/Data/Application/7A8EA990-D8C0-43B9-A527-365111FCBBA0/tmp/ReactABI21_0_0Native/9BD50E06-3D6F-4E44-9465-A17D6BE399D4.png
Run Code Online (Sandbox Code Playgroud)

或者

file:///var/mobile/Containers/Data/Application/7A8EA990-D8C0-43B9-A527-365111FCBBA0/Library/Caches/ExponentExperienceData/%2540anonymous%252Ftestapp2-d4b9a2f3-ffbf-4cba-8b8d-cd555cd62ca8/ImagePicker/2D289B12-4090-4F66-AE2B-BCDDB1C3086C.jpg
Run Code Online (Sandbox Code Playgroud)

./theme/img/share/share.png但是,不支持本地图像 URL 。顺便说一下,asset-library://也不支持 URL。