Ios 应用程序不支持3g连接,但可以在wifi上正常工作
在设备上临时部署应用程序,该应用程序在wifi下运行良好,但在3g连接下不起作用。知道我错过了什么吗 我没有从谷歌那里得到多少帮助 此外,已安装的应用程序也不会显示在“使用移动数据用于:列表”中 代码:Ios 应用程序不支持3g连接,但可以在wifi上正常工作,ios,swift,3g,alamofire,Ios,Swift,3g,Alamofire,在设备上临时部署应用程序,该应用程序在wifi下运行良好,但在3g连接下不起作用。知道我错过了什么吗 我没有从谷歌那里得到多少帮助 此外,已安装的应用程序也不会显示在“使用移动数据用于:列表”中 代码: //To handle time out issue with 3g configuration.timeoutIntervalForResource = 60 // Mark using Alamofire to do the downloads self
//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 )
无论我增加多少时间间隔。已尝试使用资源和请求
忘了提到服务器是Raspberry Pi,我无法访问局域网外的服务器,因此导致了问题。谢谢你的帮助。超时对处理服务器故障非常有帮助。在wifi或3G上运行的应用程序没有任何问题。
请求超时的唯一问题是。此问题与internet带宽有关。请使用以下代码,更改请求超时可能会对您有所帮助
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
}
}
您是否使用web服务从服务器端获取数据?您使用哪个库从服务器端获取数据?问题可能是超时请求?使用Alamofire处理web服务通信。愚蠢的问题,但是你从你的供应商那里得到了足够的数据吗?在我意识到问题的原因是愚蠢的无知之前,他并不那么愚蠢。不是问问题,只是更新问题,这样其他人就不会犯同样的错误。@mozado你解决问题了吗?那么请告诉我,我正面临来自客户端或服务器端的相同问题请求超时?有一件事我不明白,如果客户端或服务器超时。当我立即从3g切换到wifi时,该应用程序就能正常工作。超时原因若连接速度慢?不超时意味着您的请求可以响应多长时间。在wifi连接中,您将获得比3G更大的互联网带宽,因此与3G网络相比,您的请求可以在短时间内收到响应。感谢您的帮助。但是上面的代码并不能解决我的问题。甚至将TimoutiterValforResource增加到60。你是否解决了你的问题@mozado如果是,请在这里共享代码,以便我们可以学习新的东西。没有解决我的问题,我将用代码更新帖子。这些问题不是很普遍吗?因为我在stack或google上找不到太多帮助。