ZipKit is an Objective-C framework for reading and writing Zip archives in Mac OS X and iOS apps. It supports:
- the standard PKZip format
- files larger than 4GB in size using PKZip's zip64 extensions
- optionally, resource forks in a manner compatible with Mac OS X's Archive Utility (in the Mac OS X targets only)
- clean interruption, so archiving can be cancelled by the invoking object (e.g., a NSOperation or NSThread).
- It was developed by Karl Moskowski (aka @kolpanic) and released under the BSD license.
If you find ZipKit to be useful, please let me know.
###Requirements
ZipKit requires Xcode 4.6. It works on OS X 10.8 Mountain Lion, and iOS 6.0 or greater. (If you're using older versions, make sure you "git checkout 1.0.0". The project at that tag supports garbage collection and manual memory management.)
The Project The Xcode project contains three targets:
- an OS X framework
- an OS X static library
- an iOS static library
###Using ZipKit
- If you're using git for your project, first add ZipKit as a submodule to your project. If you're not using git, clone ZipKit into your project's directory; if you're using another VCS, make sure you ignore the ZipKit/ subdirectory.
- Open your .xcodeproj and drag ZipKit.xcodeproj from the Finder to the Frameworks group in Xcode's Project Navigator for your project.
- In the Project Navigator for your project, disclose ZipKit's Products and note the product you want to use in your project.
- In the Project Navigator, select your project at the top, then:
- add the relevant ZipKit product to your target's Linked Frameworks and Libraries section, and add it to the your target's Target Dependencies under Build Phases;
- add libz.dylib to your target's Linked Frameworks;
- add ./ZipKit/ to your target's User Header Search Paths setting.
See the accompanying demo projects for guidance.
###License
ZipKit is released under the BSD license. It's in COPYING.TXT in the project. Acknowledge ZipKit (and other FOSS projects you use) in your app's About or Settings view or window. (If your iOS app doesn't have either, you can add a Settings Bundle; see the ZipKit Touch demo.)
###Demo Projects
- ZipKit Utility - an OS X Cocoa application
- zku - an OS X command line tool
- ZipKit Touch - an iOS application
####Note This project was originally hosted at Bitbucket. It was transferred using fast-export, and all open issues were manually copied here.
If you need to support older versions of OS X or iOS, you can get the last BitBucket version by cloning this repository, then checking out tag 0.9.