Motivation
The README platform matrix documents several iOS gaps that force app authors into platform-specific branches:
| Gap |
Android |
iOS today |
AES for zipWithPassword(string[]) |
✅ |
❌ STANDARD only |
| Compression level for file arrays |
✅ |
ignored |
| Charset on unzip / getUncompressedSize |
✅ |
ignored (UTF-8 only) |
unzipAssets / bundle resource unzip |
✅ assets + content:// |
❌ |
Empty directories preserved in zip(string[]) |
✅ |
❌ |
Proposal
Close these gaps where the underlying libraries allow:
- iOS AES for file-array password zips — match folder AES behavior
- iOS compression level for file arrays — honor 0–9 / constants
- iOS charset — honor charset where feasible, or document a hard limitation with a clear error if unsupported
- iOS bundle unzip —
unzipAssets equivalent for app bundle / main-bundle resources
- Empty directory preservation — include empty dirs when zipping directory array items on iOS
Acceptance criteria
Priority
P1
Motivation
The README platform matrix documents several iOS gaps that force app authors into platform-specific branches:
zipWithPassword(string[])unzipAssets/ bundle resource unzipzip(string[])Proposal
Close these gaps where the underlying libraries allow:
unzipAssetsequivalent for app bundle / main-bundle resourcesAcceptance criteria
Priority
P1