Как скачивать и сохранять файлы в Expo?

В рамках Expo, существует специальный модуль под названием expo-file-system, который позволяет скачивать и сохранять файлы на устройстве пользователя. Вот как можно это сделать:

1. **Установка модуля expo-file-system**:
Убедитесь, что у вас установлен Expo SDK. Затем установите модуль expo-file-system, выполнив команду:

expo install expo-file-system

2. **Скачивание файла**:
Для скачивания файла используйте функцию FileSystem.downloadAsync(). Пример:

import * as FileSystem from 'expo-file-system';

const fileUri = 'http://example.com/file.pdf';
const downloadResumable = FileSystem.createDownloadResumable(
  fileUri,
  FileSystem.documentDirectory + 'file.pdf'
);

try {
  const { uri } = await downloadResumable.downloadAsync();
  console.log('Файл успешно скачан по адресу: ', uri);
} catch (error) {
  console.error('Произошла ошибка при скачивании файла: ', error);
}

3. **Сохранение файла**:
После скачивания файла его можно сохранить на устройстве. Пример:

import * as FileSystem from 'expo-file-system';

const fileUri = 'http://example.com/file.pdf';
const localUri = FileSystem.documentDirectory + 'file.pdf';

try {
  await FileSystem.downloadAsync(fileUri, localUri);
  console.log('Файл успешно сохранен по адресу: ', localUri);
} catch (error) {
  console.error('Произошла ошибка при сохранении файла: ', error);
}

Таким образом, используя модуль expo-file-system, вы можете легко скачивать и сохранять файлы на устройстве пользователя в приложении Expo. Не забывайте обрабатывать возможные ошибки и добавлять дополнительную логику в зависимости от ваших потребностей.