我正在使用NSBundle资源来加载某些媒体:
NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:someValue ofType@"someType"]];
如果找不到资源,url值当然仍然有效,使用它会导致应用程序崩溃,所以简单检查
if(!url) { //or even (!mediaPlayer), or (url == nil)
//show alert box
}
无济于事。
答案 0 :(得分:0)
正确的方法是将pathForResource:ofType:的结果与nil进行比较,并在此时处理错误。
NSString *pathString = [[NSBundle mainBundle] pathforResource:@"name" ofType:@"ext"];
if (!pathString) {
// Handle error
}
NSURL *theURL = [NSURL fileURLWithPath:pathString];