J'utilise actuellement la classe ci-dessous pour vérifier la connexion à Internet, mais il ne retourne pas vrai lorsque l'utilisateur disposent d'une connexion de données cellulairestest joignabilité pour les données cellulaires
import Foundation
import SystemConfiguration
public class Reachability {
class func isConnectedToNetwork() -> Bool {
var zeroAddress = sockaddr_in(sin_len: 0, sin_family: 0, sin_port: 0, sin_addr: in_addr(s_addr: 0), sin_zero: (0, 0, 0, 0, 0, 0, 0, 0))
zeroAddress.sin_len = UInt8(MemoryLayout.size(ofValue: zeroAddress))
zeroAddress.sin_family = sa_family_t(AF_INET)
let defaultRouteReachability = withUnsafePointer(to: &zeroAddress) {
$0.withMemoryRebound(to: sockaddr.self, capacity: 1) {zeroSockAddress in
SCNetworkReachabilityCreateWithAddress(nil, zeroSockAddress)
}
}
var flags: SCNetworkReachabilityFlags = SCNetworkReachabilityFlags(rawValue: 0)
if SCNetworkReachabilityGetFlags(defaultRouteReachability!, &flags) == false {
return false
}
let isReachable = flags == .reachable
let needsConnection = flags == .connectionRequired
return isReachable && !needsConnection
}
}
Je dois changer cela afin qu'il puisse revenir vrai pour cellulaire aussi, j'ai vu des gens utiliser la classe Reachability de git mais je l'ai utilisé via mon application, donc je dois changer cette classe mais je ne sais pas comment faire
et l'utilisation est comme ci-dessous: `
if Reachability.isConnectedToNetwork() == true {
print("Internet connection OK")
JSONParseFunction()
} else {
print("Internet connection FAILED")
let alert = UIAlertView(title: "You are not connected to internet ", message: "make sure you are connected to internet ", delegate: nil, cancelButtonTitle: "چشم")
alert.show()
}
`
Merci plus tôt que votre post, je l'ai utilisé la classe joignabilité de Git par la façon dont cela est plus facile que je l'utiliser dans les projets futurs – UncleJunior
Bienvenue. BTW Reachability est également un bon. Je l'ai personnellement utilisé dans mes différents projets. – Maddy