React native具有很好的库,例如CameraRoll,它使我们能够访问手机的媒体文件。但是,返回的uri缺少扩展名:
{ node:
{ timestamp: 1344461389.8,
type: 'image', <= it is used to be 'image/png' instead of 'image'
group_name: 'Camera Roll',
location:
{ altitude: 0,
longitude: -14.538611666666666,
latitude: 64.752895,
heading: 0,
speed: 0.8999988197665498 },
image:
{ width: 1668,
uri: 'ph://99D53A1F-FEEF-40E1-8BB3-7DD55A43C8B7/L0/001', <= there is no file's extension
height: 2500,
isStored: true,
playableDuration: 0 } } },
在这种情况下,如果您知道获取扩展程序或其他解决方法,请告诉我。
提前谢谢!
答案 0 :(得分:1)
我已经使用expo-media-library解决了这个问题 https://docs.expo.io/versions/latest/sdk/media-library
async myFunc() {
let uri = "ph://ED7AC36B-A150-4C38-BB8C-B6D696F4F2ED/L0/001"
let myAssetId = uri.slice(5);
let returnedAssetInfo = await MediaLibrary.getAssetInfoAsync(myAssetId);
returnedAssetInfo // you will have all the information in here
}}`
答案 1 :(得分:0)