c# - Set ZipArchiveEntry.CompressionLevel to CompressionLevel.NoCompression not work in xamarin android -


i want create zip archive store files , set ziparchiveentry.compressionlevel compressionlevel.nocompression, when run android apk in release mode, ziparchiveentries compressed , have ratio >0%.
use xamarin android 4.1.1.3 , test apk in lenovo tab 4 a7-30gc , asus z00vd.
sample code:

 public void addtoarchive(string entryname, string path, datetime timestamp)     {         ziparchiveentry zipentry = this.archive.createentry(entryname, compressionlevel.nocompression);         zipentry.lastwritetime = timestamp;         using (stream entrystream = zipentry.open())         {             using (stream filestream = file.open(path, filemode.open, fileaccess.read, fileshare.read))             {                 filestream.copyto(entrystream);                 filestream.close();             }             entrystream.close();         }     } 

thanks.

based upon microsoft .net reference source (via mono source), setting compressionlevel provides "hint" underlaying compression code.

you see files when compressed @ "zero" compression level end seeing compression due file optimizations done regardless of compression level requested. found across mono, xamarin.android, xamarin.ios, .net, etc...

this abstract concept , not zlib compression level. there may or may not correspondance possible implementation-specific level-parameter of deflater.

///------------------------------------------------------------------------------ /// <copyright file="compressionlevel.cs" company="microsoft"> ///     copyright (c) microsoft corporation.  rights reserved. /// </copyright>                                /// /// <owner>gpaperin</owner> ///------------------------------------------------------------------------------ // abstract concept , not zlib compression level. // there may or may not correspondance possible implementation-specific level-parameter of deflater. public enum compressionlevel {     optimal = 0,     fastest = 1,     nocompression = 2 } 

Comments