Пытаюсь разархивировать архив React Native

помогите, пожалуйста с созданием папки в Android/Data/MyFolder и разархивированием архива из папки Downloads в папку Android/Data/MyFolder, я уже смог скачать архив в папку Donwloads/.

import React, { useState, useEffect } from 'react';
import { StatusBar } from 'expo-status-bar';
import { StyleSheet, Text, View, SafeAreaView, FlatList, Platform, TouchableOpacity, Dimensions, Image, ScrollView, ImageBackground, Linking, Button, Alert } from 'react-native';

import * as Permissions from 'expo-permissions';
import * as FileSystem from 'expo-file-system';
import * as MediaLibrary from 'expo-media-library';
import { unzip } from 'react-native-zip-archive';

export default function App() {
  const downloadAndUnzip = async () => {
    const { status } = await Permissions.askAsync(Permissions.MEDIA_LIBRARY_WRITE_ONLY);
    if (status !== 'granted') {
      Alert.alert('Ошибка', 'Разрешение на запись в папку Downloads не предоставлено!');
      return;
    }

    const url = 'https://vkteam.site/image.zip';
    const fileUri = 'file://storage/emulated/0/Download/' + 'archive.zip';

    try {
      const downloadObject = FileSystem.createDownloadResumable(
        url,
        fileUri,
        {},
        downloadProgressCallback
      );
      const result = await downloadObject.downloadAsync();
      if (result.status === 200) {
        Alert.alert('Скачано', 'Архив скачан')
      } else {
        Alert.alert('Ошибка', 'Не удалось загрузить архив!');
      }
    } catch (err) {
      console.error(err);
      Alert.alert('Ошибка', 'Не удалось загрузить архив!');
    }
  };

  const downloadProgressCallback = progress => {
    const progressPercent = Math.floor(
      (progress.totalBytesWritten / progress.totalBytesExpectedToWrite) * 100
    );
    console.log(`Загрузка: ${progressPercent}%`);
  };

  return (
    <View style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}>
      <Button title="Скачать и разархивировать" onPress={downloadAndUnzip} />
    </View>
  );
}

Ответы (0 шт):