没有已知的选择器'URLAssetWithURL'的类方法

时间:2015-02-20 22:24:48

标签: ios objective-c avfoundation nsurl avurlasset

我有一个iOS应用程序,它使用应用程序中记录的许多不同的音频文件并保存。我已导入AVFoundation框架,但我仍然收到错误:

  

没有已知的选择器'URLAssetWithURL'的类方法

这是我的代码:

AVAsset *asset = [AVURLAsset URLAssetWithURL:[NSURL URLWithString:audioFiles[indexPath.row]]];
waveformView.asset = asset;

audioFiles数组内部是一个本地URL,如下所示:

  

文件:///var/mobile/Containers/Data/Application/6B35F9EA-1896-4989-91AF-06850B74B2E9/Documents/record_sound_1.aif

我做错了什么?

2 个答案:

答案 0 :(得分:2)

根据https://developer.apple.com/library/mac/documentation/AVFoundation/Reference/AVURLAsset_Class/index.html

的课程参考

class方法有两个参数,URL和一些选项。改为:

AVAsset *asset = [AVURLAsset URLAssetWithURL:[NSURL URLWithString:audioFiles[indexPath.row]] options:nil];
waveformView.asset = asset;

我希望XCode的自动完成和突出显示你明显使用了一个不存在的方法......

答案 1 :(得分:0)

您缺少该方法调用中的第二个参数。 URLAssetWithURL:options:被声明为:

+ (AVURLAsset *)URLAssetWithURL:(NSURL *)URL options:(NSDictionary *)options

在通话中,您缺少options参数。