アプリで URL からオーディオを再生しようとしています。iOS 8 (シミュレーターと物理デバイス) では、すべてが期待どおりに行われます。iOS 9 の場合、シミュレーターでは動作しますが、デバイスではオーディオが再生されません。ストリーミングが表示されます。再生をクリックすると、進行状況バーにもオーディオがロードされて再生されていることが示されますが、サウンドは聞こえません。この問題は、iOS 9 物理デバイスで発生しています。iOS 8 物理デバイスでは問題なく動作します。
シンプルなボタンを作りました。ボタンをクリックすると、AVPlayerViewController が読み込まれ、指定された URL で AVPlayer が初期化されます。コードは次のとおりです。
#import "ViewController.h"
#import <AVKit/AVKit.h>
#import <AVFoundation/AVFoundation.h>
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (IBAction)playAudio:(id)sender {
NSURL *url = [NSURL URLWithString:@"https://path/to/my.mp3"];
[self performSegueWithIdentifier:@"playSegue" sender:url];
}
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
AVPlayerViewController *viewController = (AVPlayerViewController *)segue.destinationViewController;
viewController.player = [AVPlayer playerWithURL:(NSURL *)sender];
}
@end