2013-08-26 33 views
4

我想从需要OAuth2身份验证的来源流式传输音频文件,这是我的代码,但它不起作用。来自经过验证的URL的iOS流音频

NSMutableURLRequest *req = [NSMutableURLRequest requestWithURL:url]; 

     [req setValue:[NSString stringWithFormat:@"Bearer %@", accessToken] forHTTPHeaderField:@"Authorization"]; 

     player = [AVPlayer playerWithURL:req.URL]; 
     [player play]; 

你能帮忙吗?

+0

你尝试这样吗? [req addValue:[NSString stringWithFormat:@“Bearer%@”,accessToken] forHTTPHeaderField:@“Authorization”]; – karthika

+0

现在尝试它,不工作 – vburojevic

+0

@Wikiboo是你能解决有关从谷歌驱动器流媒体音频ur问题。 – NextStep

回答

2

问题是您将身份验证令牌添加为HTTP标头,但只使用URL发出请求(并且标头未包含在URL中)。

我需要在我的应用程序中做类似的事情,但看起来好像不可能干扰AVPlayer的网络请求(至少不是公共API)。所以现在我正在使用NSURLSession来自己请求文件(这意味着不需要流式传输 - 需要等待整个文件,或者执行一些复杂的处理,将其交给大型音频播放器),否则,请将网络服务接受我的参数作为查询参数而不是HTTP标头。

这个问题也有一些潜在的变通办法:Send headers with AVPlayer request in iOS