Я использовал rn-fetch-blob для извлечения api и загрузки видео, видео загружается успешно, однако, когда я пытаюсь открыть файл, он показывает мне: «файл не открывается», это формат mp4 и работает иначе, я проверил файл отдельно.
Ниже приведена функция загрузки:
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>
Когда я открываю загруженный файл, он показывает, что не может открыть файл, почему так? Пожалуйста, скажите мне, если вам нужно что-нибудь еще и помогите.