récupérer de l'IP
easyd
Membre
Bonjour tous le monde,
Merci de votre aide j'ai bien avancer et compris beaucoup de choses.
Mais aujourd'hui j'ai un blocage.
Je cherche a récupérer l'IP de l'utilisateur qui s'inscris dans l'application, mais n'arrive pas.
J'ai bien compris le code que j'ai trouver, mais quels son les étapes a suivre .
Voilà le code SWIFT 3 :
func getIFAddresses() -> [String] {
var addresses = [String]()
// Get list of all interfaces on the local machine:
var ifaddr : UnsafeMutablePointer<ifaddrs>?
guard getifaddrs(&ifaddr) == 0 else { return [] }
guard let firstAddr = ifaddr else { return [] }
// For each interface ...
for ptr in sequence(first: firstAddr, next: { $0.pointee.ifa_next }) {
let flags = Int32(ptr.pointee.ifa_flags)
var addr = ptr.pointee.ifa_addr.pointee
// Check for running IPv4, IPv6 interfaces. Skip the loopback interface.
if (flags & (IFF_UP|IFF_RUNNING|IFF_LOOPBACK)) == (IFF_UP|IFF_RUNNING) {
if addr.sa_family == UInt8(AF_INET) || addr.sa_family == UInt8(AF_INET6) {
// Convert interface address to a human readable string:
var hostname = [CChar](repeating: 0, count: Int(NI_MAXHOST))
if (getnameinfo(&addr, socklen_t(addr.sa_len), &hostname, socklen_t(hostname.count),
nil, socklen_t(0), NI_NUMERICHOST) == 0) {
let address = String(cString: hostname)
addresses.append(address)
}
}
}
}
freeifaddrs(ifaddr)
return addresses
}
Ce que j'ai compris ifaddrs et getifaddrs
Il faut créez une en-tête de pointage et incluez #include <ifaddrs.h> dans celui-ci.
J'ai tous essayer et toujours des erreurs.
Pouvez-vous m'aider,
Merci beaucoup,
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Quelles erreurs tu as ? De compilation ou de retours non-espérés?
Désolé voilà mes erreurs :
Merci,
(l'importer dans le projet et utiliser la commande "import" dans ton code).
J'ai essayer ce code qui vient de
http://stackoverflow.com/questions/25626117/how-to-get-ip-address-in-swift/25627545#25627545
Dans la réponse, il est dit qu'il faut inclure le fichier "ifaddrs.h" et pour cela créer un "bridging header", c'est à dire un fichier qui sert à exporter les symboles ObjC vers Swift.
N'ayant pas d'expérience sur le sujet, je te laisse chercher sur le web, à moins que d'autres sachent ici comment s'y prendre.
Bonjour tous le monde,
J'ai résolut mon problème.
je chercher toujours compliquer il fallait juste le faire au niveau du PHP.
Merci a vous,