2010-08-13 4 views
0

좀 용지를 넣는 NSBundle 자원을 사용하고 있습니다 :iPhone SDK : NSBundle 리소스 로딩의 오류를 올바르게 처리하는 방법은 무엇입니까?

NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:someValue [email protected]"someType"]]; 

찾을 수 없습니다 자원이없는 경우, URL 값은 물론, 유효하고 응용 프로그램 충돌을 야기 사용하기 때문에 간단한 검사

if(!url) { //or even (!mediaPlayer), or (url == nil) 
    //show alert box 
} 

도움이되지 않습니다.

답변

0

올바른 방법은 pathForResource : ofType :의 결과를 nil과 비교하고 그 지점에서 오류를 처리하는 것입니다.

NSString *pathString = [[NSBundle mainBundle] pathforResource:@"name" ofType:@"ext"]; 
if (!pathString) { 
    // Handle error 
} 

NSURL *theURL = [NSURL fileURLWithPath:pathString]; 
관련 문제