Mam zmienną SCNetworkReachabilityFlags
i chcę ją sprawdzić pod kątem konkretnych wartości, np. jeśli sieć jest dostępna za pośrednictwem sieci WWAN.Jak sprawdzić pola bitowe (w szczególności SCNetworkReachabilityFlags) dla flag w Swift?
Typ SCNetworkReachabilityFlags
jest typealias
dla UInt32
i różne opcje są definiowane jako Int
zmiennych.
Korzystanie z Objective-C można wykonać następujące czynności:
if (flags & kSCNetworkReachabilityFlagsIsWWAN) {
// do stuff
}
w Swift gdy próbuję to:
if reachabilityFlags & kSCNetworkReachabilityFlagsIsWWAN {
// do stuff
}
masz błąd kompilatora: Could not find an overload for '&' that accepts the supplied arguments
.
Przeczytałem kilka innych pytań, gdzie opcje bitfield, gdzie zdefiniowano jako struct RawOptionSet
. Nie zostało to zrobione w SCNetworkReachability
.
Jak sprawdzić flagi w Swift?