iPhone - NSURLConnection异步上传文件失败,wifi为ios6

时间:2012-11-09 17:21:26

标签: iphone wifi nsurlconnection

我已经实现了我的NSURLConnection方法将文件上传到我的服务器,一切正常,直到设备升级到iOS6。现在,它在3G下工作正常,但是当通过wifi连接时,上传只停止一半并挂起,直到超时开始。

经过一番检查,使用wifi:

  1. 上传较小的文件时,didSendBodyData委托会被多次调用,这很好,但奇怪的是,totalBytesWritten相当于totalBytesExpectedToWrite之后将暂停一段时间,同一个代理将再次被调用,现在,totalBytesExpectedToWrite将成为原始文件大小的2倍。

  2. 上传较大的文件时,didSendBodyData委托将被多次调用,但totalBytesWritten永远不会达到totalBytesExpectedToWrite。它将中途停止,并且在超时之前不会再次调用该代表。

  3. 以下是我开始发送文件的简要说明:

    NSURL *url = [[NSURL alloc] initWithString:MyURI];
    NSMutableURLRequest *req = [[NSMutableURLRequest alloc] initWithURL:url];
    [req setHTTPMethod:@"POST"];
    [req setTimeoutInterval:600];
    [req setCachePolicy:NSURLRequestReloadIgnoringLocalAndRemoteCacheData];
    [req setValue:@"application/octet-stream" forHTTPHeaderField:@"Content-Type"];
    [req setValue:userName forHTTPHeaderField:@"AuthField1"];
    [req setValue:authorizationToken forHTTPHeaderField:@"AuthField2"];
    
    [req setHTTPBody:data];
    
    NSURLConnection *reqConnection = [[NSURLConnection alloc] initWithRequest:req delegate:self];
    

    在iOS6中通过wifi连接有什么变化?任何建议将不胜感激。

0 个答案:

没有答案