【iOS開発】Zip解凍・圧縮ライブラリ「SSZipArchive」の紹介
どうも、開発部のMです。
今年もiOS開発で得たちょっとした情報を共有出来ればと思いま
引き続きよろしくお願いします!
さて、去年は天気アプリの開発を行っていたMですが、
今月から内容が変わって動画アプリの開発をしております。
動画アプリといえば動画の再生はもちろん、
動画の情報を表示してあげたりと通信周りやデータ管理が大変で
以前リリースした「動画検索楽々」
携帯デバイスという以上、
いかにして通信量を減らすかが動画アプリの重要なポイントですね
というわけで、
Zipファイルを手軽に扱えるライブラリ「
使い方は簡単!
1.下記から「SSZipArchive」
https://github.com/soffes/
2.SSZipArchiveフォルダとライブラリ「libz」
3.使用するファイルに「SSZipArchive.h」
あとは下記のように対象のファイルパスを渡すだけでOK!
//Zip解凍
NSString *zipPath = @”zip_file_path”;
NSString *unzippedPath = @”unzipped_file_path”;
[SSZipArchive unzipFileAtPath:zipPath toDestination:unzippedPath];
// Zip圧縮
NSString *zippedPath = @”zipped_file_path”;
NSArray *inputPaths =
[NSArray arrayWithObjects:
[[NSBundle mainBundle] pathForResource:@”image1″ ofType:@”png”],
[[NSBundle mainBundle] pathForResource:@”image2″ ofType:@”png”],
nil];
[SSZipArchive createZipFileAtPath:zippedPath withFilesAtPaths:inputPaths];
引数にパスワードやdelegateを追加してやれば
パスワードの設定や解凍完了時の処理を拾うことも出来ますし、
万が一、
また、MITライセンスなので安心して使うことができますね。
おまけ
Zipよりもgzipを使いたい人はNSURLConnecti
自動的に解凍してくれる機能があるのでヘッダに以下の値を追加し
[connection setValue:@”gzip” forHTTPHeaderField:@”Accept-