Ошибка React native Android: org.apache.commons.compress.compressors.CompressorException: Не удалось создать CompressorInputStream

#android #react-native #tar

#Android #реагировать-родной #tar

Вопрос:

Я использую react-native-archiver для извлечения файла tar.

    const targetPath = ExternalDirectoryPath;
   RNArchiver.untar(ExternalDirectoryPath   '/content.tar', targetPath)
     .then(path => {
       console.log(`untar completed at ${path}`)
     })
     .catch(error => {
       console.error(error)
     })

  

У меня эта ошибка на Android :

Error: org.apache.commons.compress.compressors.CompressorException: Could not create CompressorInputStream.

Ответ №1:

Мне удается решить проблему, изменив эту строку кода в RNArchiverModule.java внутри модулей узла -> react-native-archiver -> android

От :

 Archiver archiver = ArchiverFactory.createArchiver(ArchiveFormat.TAR, CompressionType.GZIP); 
  

Для :

  Archiver archiver = ArchiverFactory.createArchiver(ArchiveFormat.TAR);
  

Он извлекал tar.gz не смола.

Но все же библиотека никогда не поддерживает ios, и мне нужно найти решение для этого?