NSURLConnection完成的错误代码-1002

问题描述:

朋友我有简单的音频播放器(MPMoviePlayerController)可以播放音频流。在iOS上11我有非常interessing麻烦,千个时间我有错误,我流停止:NSURLConnection完成的错误代码-1002

NSURLConnection finished with error - code -1002 

我粘贴此代码(此代码只见stackowerflow),但它没有帮助我:

<key>NSAppTransportSecurity</key> 
    <dict> 
     <key>NSAllowsArbitraryLoads</key> 
     <true/> 
     <key>NSExceptionDomains</key> 
     <dict> 
      <key>cast.mysite.com</key> 
      <dict> 
       <key>NSExceptionAllowsInsecureHTTPLoads</key> 
       <true/> 
       <key>NSIncludesSubdomains</key> 
       <true/> 
      </dict> 
     </dict> 
    </dict> 

也许你知道最好的解决方案?

+0

确保您从安全服务器(具有有效证书的服务器)流式传输音频。 –

+0

这是义务?我有8个http流,在iOS 10上工作完美,但在iOS 11上 - 5分钟后播放器停止 – Genevios

+0

我在“答案”部分回答了您的问题,因为在评论区域中很难解决您的问题。 –

该错误把这个码应该涉及到使用HTTP,而不是HTTPS的。应用传输安全失败返回错误代码-1022。

错误代码-1002表示无效的URL。也许你的HTTP直播播放列表文件包含一个结构上无效的URL(例如缺少方案,http/https之外的方案等)?

有关更多的调试,在您的Xcode项目设置这个环境变量

CFNETWORK_DIAGNOSTICS=1 

并重新运行该应用程序。一旦你知道什么URL失败,问题可能会变得更加明显。

如果不是,请提交错误。

+0

这是不工作的解决方案,无论如何,这条线后,我有TIC日志.. – Genevios

+0

日志说什么? – dgatwood

+0

tic阅读状态[58:0x0]:1:57我很清楚,在开始显示此行之前,每次都没有错误,但非常烦人 – Genevios

首先您必须使用安全服务器(具有有效证书的服务器)。 我不确定它是否有必要,因为我从来没有试图用无效证书命中服务器。你可以试试这个代码(不知道它会为你工作或没有)在Appdelegate.m

@implementation NSURLRequest(DataController) 
+ (BOOL)allowsAnyHTTPSCertificateForHost:(NSString *)host 
{ 
    return YES; 
} 
@end 
+0

我会尝试这2-3天后回答,如果没关系,我会接受你的答案,但无论如何谢谢! – Genevios

+3

这是一个非常非常糟糕的主意。这将禁用整个应用程序的所有URL请求安全性,如果您尝试它,则您的应用程序将从iOS App Store中被拒绝。 – dgatwood