-
Notifications
You must be signed in to change notification settings - Fork 223
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Zip files created with store method can not be extracted on android devices #113
Comments
i know some parsers don't like data descriptors in different modes. then theres mac archive utility which is also picky. i dont recall what the sig goes too as its represented a bit different than the constants defined. thanks for the report though and ill see what can be done. |
EXTSIG here is definitely referring to the data descriptor. looking at it, im wondering if its unhappy with my efforts to reduce size by only using data descriptors when needed. though spec allows this.. |
Is it possible to enable these data discriptors permanently? So I can see if this solves the bug? |
currently its based on need, theres no real toggle |
Could you give me a code hint? I don't want to switch to a command line tool for zipping and this bug is really urgent for us. |
if you could create the bare minimum needed to reproduce this in a repo that i can clone and try out. i did some very basic tests on my moto x 2nd gen (4.4) that seemed to work though that was with es explorer which im not sure what underlying lib it uses. |
I can provide you my test project that I created with the script that uses |
@mlegenhausen let me know when your able to provide something to test on. |
I am sorry I am little bit busy currently. I needed to change to the native zip function from Ubuntu cause this was a blocking problem for me. I will try to provide an example as soon as possible. |
no problem, i know how it goes. do let me know when you come up with a test repo. |
So I had the problem again even with the native |
…related to unzipped compressed files on Android devices - see: ionic-team/ionic-cli#494 and archiverjs/node-archiver#113.
really could use some insight from someone who works with android builds as the encoding used definitely works with Windows/Mac/Ubuntu from what ive seen. Android seems to following a different spec or such. |
The method how you create the file with
node-archiver
is irrelevant only{ store: true }
is relevant. Transfering the data to an android device and extracting the file with theZipInputStream
creates the following error:The EXTSIG value depends on the file content.
Using
node-archiver
without the store flag creates a valid zip file and can be extracted on android devices.Generating files from the command line via
zip -0 file.zip file.txt
can be extracted on the android devices. Tested on Android 4.4 and 5.0 in simulator and real devices.I can uncompress the generated file from
node-archiver
on Mac OS 10.10, Linux Machines and even on iOS devices. Only Android seems to be more strict.Tested with
node-archiver
HEAD version.The text was updated successfully, but these errors were encountered: