我正在尝试加载一个M4A文件,但是我无法使用NSBundle获得文件的路径。
NSString *fileURLString = [[NSBundle mainBundle] pathForResource:fileName ofType:fileExtension];
NSURL *fileToBePlayed = [[NSURL alloc] initWithString:fileURLString];
tourAudioPlayer = [tourAudioPlayer initWithContentsOfURL:fileToBePlayed error:nil];当我运行代码时,调试器显示fileURLString为零,因此,随后的两个对象也是如此。
我已经将该文件添加到支持文件目录中,并确认该文件包含在Target > Build阶段下的Copy参考资料中。
不幸的是,在这种情况下,清洁和构建的魔力让我失望了。在加载文件时是否有某个阶段,因为我丢失了?
发布于 2014-04-21 04:42:52
试试这个..。
- (void)viewDidLoad
{
[super viewDidLoad];
NSURL *vedioURL = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:FileName ofType:FileType]];
MPMoviePlayerViewController *videoPlayerView = [[MPMoviePlayerViewController alloc] initWithContentURL:vedioURL];
[self presentMoviePlayerViewControllerAnimated:videoPlayerView];
[videoPlayerView.moviePlayer play];
}发布于 2014-04-21 16:07:44
我解决了这个问题,原来是两个愚蠢的问题。
第一个问题是我使用的是initWithString:而不是fileURLWithPath:。懒洋洋地阅读我的文档。
第二个问题只是一个令人尴尬的疏忽。所提供的代码片段代表了AVAudioPlayer的初始创建,因此我遵循在堆上为它分配空间。
做出上述改变已经解决了这个问题。感谢每一个提供建议和支持的人。
https://stackoverflow.com/questions/23187586
复制相似问题