Created
August 14, 2018 02:45
-
-
Save AmatsuZero/40889f7d7013b290f9ab0cb1944547d1 to your computer and use it in GitHub Desktop.
iOS端检查是否设置了代理
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/// 是否设置了代理 | |
/// | |
/// - Returns: 代理设置情况 | |
func getProxyStatus() -> Bool { | |
guard let proxySettings = CFNetworkCopySystemProxySettings()?.takeUnretainedValue(), | |
let url = URL(string: "https://www.baidu.com") else { | |
return false | |
} | |
let proxies = CFNetworkCopyProxiesForURL((url as CFURL), proxySettings).takeUnretainedValue() as NSArray | |
guard let settings = proxies.firstObject as? NSDictionary, | |
let proxyType = settings.object(forKey: (kCFProxyTypeKey as String)) as? String else { | |
return false | |
} | |
#if DEBUG | |
if let hostName = settings.object(forKey: (kCFProxyHostNameKey as String)), | |
let port = settings.object(forKey: (kCFProxyPortNumberKey as String)), | |
let type = settings.object(forKey: (kCFProxyTypeKey)) { | |
print(""" | |
host = \(hostName) | |
port = \(port) | |
type= \(type) | |
""") | |
} | |
#endif | |
return proxyType == (kCFProxyTypeNone as String) | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment