아이폰어플개발정보2010. 6. 24. 14:22
iPhone NSURLConnection 을 이용한 파일 다운로드
NSURLConnection 을 이용하면 웹에 있는 파일을 쉽게 다운로드 할 수 있다.
그래. 쉽다. 그런데 이걸 알기까지는 결코 쉽지 않았다. 에휴..

NSURLConnection 을 쓰기 편하도록 KNURLDownloader 를 만들었다.
사용법은 간단하다.

- (void)start {

NSLog(@"Start Test drived development");

KNURLDownloader*knDownloader = [KNURLDownloadersharedInstance];

[knDownloaderdownload:@"http://211.115.217.70/down/ServicePort.plist"

callbackTarget:self

onComplete:@selector(onDownloadComplete:) 

onError:@selector(onError)];

}


정말 쉽지? 두개의 콜백메서드를 할당해줘야 한다. 한가지는 파일 다운로드가 완료되었을 때 동작할 메소드

다른 한가지는 에러가 발생했을때 동작할 메소드다.


그러니까. 이걸 사용하는 콜러에서는 두개의 메소드가 아래처럼 있음직하다.


- (void)onDownloadComplete:(NSMutableData *)pRcvData {

NSLog(@"onFire downloadcomplete callback function");

KNURLDownloader*knDownloader = [KNURLDownloadersharedInstance];

[knDownloader saveToFile:pRcvData pFileName:@"ServicePort.plist"];

}


- (void)onDownloadError {

NSLog(@"onFire downloaderror callback function");

}


다운로드가 완료되었을 때는 saveToFile 메소드를 이용해서 파일을 저장할 수 있다.

나중에 이 클래스를 계속 업그레이드 하면서 파일저장 메소드가 꽤나 많이 생길 것 같은데..




출처 : http://blog.naver.com/PostView.nhn?blogId=suny4rang&logNo=50082266140
Posted by 오늘마감

댓글을 달아 주세요