я использую rn-fetch-blob для получения API и загрузки файла непосредственно в мое хранилище, создал путь, я могу успешно загрузить его сейчас, но когда я пытаюсь открыть файл, он показывает мне: «не могу открыть file '
Ниже приведена моя функция загрузки:
download =async (item) => {
console.log(item)
const granted = await PermissionsAndroid.request(
PermissionsAndroid.PERMISSIONS.WRITE_EXTERNAL_STORAGE
)
if (granted === PermissionsAndroid.RESULTS.GRANTED){
let dirs = RNFetchBlob.fs.dirs;
RNFetchBlob.config({
fileCache: true,
addAndroidDownloads : {
useDownloadManager: true,
notification : true,
path: dirs.DownloadDir + "/Baaz_"+Math.random().toString().slice(2, 6) ,
mime : 'application/mp4',
mediaScannable : true,
}
})
.fetch('GET', 'some url'+item.nameVid,{ 'Cache-Control': 'no-store' }).then((res) => {
alert('The file has saved!')
console.log('The file saved to ', res.path())
})
}
}
И я вызвал эту функцию внутри плоского списка для значков загрузки, как показано ниже:
<TouchableOpacity
onPress= {() => this.download(item)}
style={{
alignItems: 'center',
borderRadius: 60,
padding: 10,
}}>
<Icon name="download" size={30} color="white" />
</TouchableOpacity>
Может кто-нибудь, пожалуйста, скажите мне, почему это так? Я уже обновил зависимости и добавил разрешения. Скажи мне, если тебе понадобится что-нибудь еще.