5

我无法从 React Native 应用程序打开 iOS 画廊应用程序。我有文件 url 和资产 url。我从 CameraRoll 获得了资产 url。现在我想打开画廊本身来查看图像。

这是我使用的代码

openGallery = () => {
// this code is working on android using asset url
// sample url on iOS
// file url : file:///var/mobile/Containers/Data/Application/A41FFC2E-06D4-445D-9B94-D21E885930C7/Documents/video/popcam-1527202811.mov
// asset url : assets-library://asset/asset.mov?id=D4C62335-EDB1-4A75-B94D-61C3D48CADEA&ext=mov
const { galleryUrl, source } = this.props
const url = Platform.OS === 'ios' ? source : galleryUrl
Linking.canOpenURL(url).then(canOpen => {
  if (canOpen) {
    Linking.openURL(url)
  } else {
    Alert.alert('Info', 'Under Development')
  }
})

谢谢

4

2 回答 2

11
openPhotos = () =>{
switch(Platform.OS){
  case "ios":
    Linking.openURL("photos-redirect://");
  break;
  case "android":
    Linking.openURL("content://media/internal/images/media");
  break;
  default:
    console.log("Could not open gallery app");
 }
}
于 2018-10-03T15:16:33.877 回答
0

我不知道打开特定资产的方法。但是,您可以使用以下方案打开照片应用程序:

Linking.openURL('photos-redirect://')

于 2018-07-21T01:43:30.450 回答