Ada*_*dam 7 iphone resources nsurl
由于某种原因在获取资源的URL时遇到问题:此代码在viewDidLoad中,并且在其他应用程序中有效,但由于某些原因不在此处:
NSString* audioString = [[NSBundle mainBundle] pathForResource:@"sound" ofType:@"wav"];
NSLog(@"AUDIO STRING: %@" , audioString);
NSURL* audioURL = [NSURL URLWithString:audioString];
NSLog(@"AUDIO URL: %d" , audioURL);
NSError* playererror;
audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:audioURL error:&playererror];
[audioPlayer prepareToPlay];
NSLog(@"Error %@", playererror);
Run Code Online (Sandbox Code Playgroud)
日志输出:
音频字符串:/var/mobile/Applications/D9FA0569-45FF-4287-8448-7EA21E92EADC/SoundApp.app/sound.wav
音频网址:0
错误错误域= NSOSStatusErrorDomain代码= -50"无法完成操作.(OSStatus error -50.)"
slf*_*slf 22
你的字符串没有协议,所以它是一个无效的网址.试试这个...
NSString* expandedPath = [audioString stringByExpandingTildeInPath];
NSURL* audioUrl = [NSURL fileURLWithPath:expandedPath];
Run Code Online (Sandbox Code Playgroud)
只需将一行更改为:
NSURL* audioURL = [NSURL fileURLWithPath:audioString];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8862 次 |
| 最近记录: |