This is a shared library for Android, iOS*, OSX, Windows, Linux and webGL** to compress/decompress zip/gzip/tar/bz2 files and buffers.
**WebGL supports all functions except the ones that require file system access.
If you are publishing for MacOS on the AppStore please do the following to codesign the bundle: 1. Remove all the meta files from inside the .bundle. 2. Remove (if any) folder named CodeSignature. 3. Find the Info.plist file and change the bundleID to one of your own.
It is also part of the 7z/lzma/zip package in the asset store here:7zip/lzma/zip plugins
Fast zip/gzip compression and decompression with a clean and simple interface. Very easy to use. Well commented example and documentation.
The plugin is about 7x times faster in compression speed and 3x times faster in decompression speed compared to SharpZipLib.
compress a buffer and write it or append it to a zip archive.
get file and size info of all the files or a specific file from a zip archive.
extract a single file out of a zip archive.
extract multiple entries out of a zip archive.
extract a list of entries to the file system or in multiple buffers.
decompress a file of a zip archive to a byte buffer.
delete an entry in a zip archive.
replace an entry in a zip archive.
get progress of extraction when the zip archive has multiple files.
get byte level progress of compression/decompression (single or multiple files).
create in Memory zip files and manipulate them from there.
Support of split zip files compress/decompress (1.zip. 1.z01, 1.z02, …)
decompression of split zip archives (in the form of 1.zip, 1.z01, 1.z02, …)
ability to discover merged/hidden zip/gzip archives in files or buffers and extract from there.
bz2/zlib compression-decompression methods. (bz2 method not available for MacOS/iOS/tvOS & webGL)
buffers can be treated as files. That means if you have a file in www.bytes you can perform operations directly on the buffer.
support for native file buffers to avoid memory spikes when decompressing from managed buffers.
support for STORE method when setting level of compression to zero.
create/decompress gzip files and buffers.
decompress gzip from buffer to the file system.
ability to cancel most zip/unzip/gzip/tar operations when they are called from a Thread.
ability to create tar archives from directories or list of files with byte level progress.
untar and untar entry support with byte level progress.
compress/decompress of tar.gz, tar.bz2 with progress.
create and decompress bz2 archives with progress.
thread safe
utf-8 support
The ios and OSX libraries are compiled as universal. That means that they will support 32 and 64 bit builds.
The Windows and Linux libraries are compiled for x86 and x86_64 build modes.
The Android lib is compiled for armeabi-v7a, x86, x86_64 and arm64-v8a.
(Armv7 and x86 include also plugins with minimum api=24 (7.0 Nougat) to support files larger than 2GB.)
Hi. The Android x86_64 was zipped in the package for the future if unity will support x86_64 android devices. I don’t know why you have it unzipped, I will look into it. You can safely delete it or zip it.
Edit: you propably upgraded a unity4.x project to unity5.x. If you download with unity5 the package you should not see these errors.
Linux, iOS, Android, MacOSX can treat now buffers as files. That means if you have a file in www.bytes you can perform operations directly on the buffer.
(For Android this is very useful since you can decompress from Streaming Assets without copying to Persistent data path.)
all platforms: added support for fixed buffer operations to avoid memory allocations.
refactored the preprocessor directives to comply with Unity 5.3.
iOS: simulator plugin has now universal, i386 and x86_64 variations.
progress functions are the same on all platforms now. That introduced a small breaking code change. Instead of providing a referenced integer or float you provide a single item integer of float array. Removed deprecated iOS functions to get progress.
iOS: renamed some native functions to avoid collision with unity’s libiphone lib.
all platforms: fixed an issue with decompressing of zip files containing the ‘__MACOSX’ folder. The ‘__MACOSX’ folder will be ignored along with files starting with ‘._’ and files with 0 bytes size.
Next update is on its way to solve Unicode issues with paths and filenames on Win and WSA plugins.