应用程序不与3G连接工作,但在wifi上工作正常

问题描述:

在设备上部署的应用程序,应用程序运行良好的WiFi,但不适用于3G连接。任何想法我失踪?应用程序不与3G连接工作,但在wifi上工作正常

不会从谷歌得到很多帮助。

而且也安装在使用移动数据不显示应用:列表

代码:

//To handle time out issue with 3g 

    configuration.timeoutIntervalForResource = 60 

    // Mark using Alamofire to do the downloads 

    self.alamofireManager = Alamofire.Manager(configuration:configuration) 
    self.alamofireManager!.request(.GET, jsonUrl).responseJSON(){ 
     (_, _, JSON, _) in 
     println("printing json :\(JSON)") 
     if JSON != nil { 

       let imageInfos = (JSON!.valueForKey("image") as [NSDictionary]).map { 
       ImageInfo(id: $0["id"] as String, url: $0["url"] as String) 
      } 

      self.tableData.addObjectsFromArray(imageInfos) 
} 

错误日志:

我得到一个

(Error Domain = NSURLErrorDomain Code = -1004) 

不管我增加了多少timeoutInterval。尝试使用资源和请求

忘了提及服务器是树莓派,我无法访问局域网之外的服务器,导致问题。谢谢您的帮助。超时在处理服务器故障时非常有用。

+0

您是否使用Web服务获取数据表单服务器端和您使用哪个库从服务器端获取数据端可能是问题是超时请求? –

+0

使用Alamofire处理web服务通信。 –

+0

愚蠢的问题,但是你有足够的数据从你的提供者? – Eyeball

有没有应用程序工作在无线或3G的任何问题。与request timeout唯一的问题。这个问题与互联网带宽有关。

+0

从客户端或服务器端请求超时? –

+0

从两边。 –

+0

有一件事我不明白在这里,如果客户端或服务器超时。当我从3g立即切换到WiFi时,该应用程序可以正常工作。如果连接速度超时,会导致超时? –

请使用以下代码更改请求超时可能对您有所帮助。

var alamofireManager : Alamofire.Manager? 

func getCallToServer(){ 
    let configuration = NSURLSessionConfiguration.defaultSessionConfiguration() 
    configuration.timeoutIntervalForResource = 10 // seconds 

    self.alamofireManager = Alamofire.Manager(configuration: configuration) 
    self.alamofireManager!.request(.GET, "http://example.com/") 
    .response { (request, response, data, error) in 

    } 
} 
+0

感谢您的帮助。但上面的代码并没有解决我的问题。即使增加了timoutIntervalForResource为60. –

+0

你是否解决了你的问题@mozado如果是的话,你可以在这里分享代码,这样我们可以学习新的东西。 –

+0

没有解决我的问题,我用代码更新了帖子。这些问题不是很常见?因为我无法在堆栈或谷歌上找到很多帮助。 –