如何在Mac OSX上以编程方式更改代理设置。我熟悉iOS,由于Mac OS编程类似,因此不应该有太多问题。但是,我缺乏创建代理更改的逻辑。手动调整非常容易。我需要的是“系统偏好设置”中的网络选项卡:
我尝试过的内容:
let dynamicStore: SCDynamicStoreRef = SCDynamicStoreCreate(nil, "setProxy" as CFString, nil, nil)!
let updated = SCDynamicStoreSetValue(dynamicStore, "HTTPProxy" as CFStringRef, "111.222.333.1") // updated is false, indicating unsuccessful operation
我也尝试了这个,但返回的字典是只读的。
let dynamicStore: SCDynamicStoreRef = SCDynamicStoreCreate(nil, "myFunc" as
CFString, nil, nil)!
let proxyDict = SCDynamicStoreCopyProxies(dynamicStore)
if let proxyDict = SCDynamicStoreCopyProxies(dynamicStore) as NSDictionary? {
if let port = proxyDict["HTTPPort"] as? Int {
print("HTTPPort:", port)
proxyDict["HTTPPort"] = 8088; // can't do that
}
}
我已经没有更多的想法了。