system proxy & build_windows script

This commit is contained in:
wgh19
2024-05-15 20:40:59 +08:00
parent 702fbf42b8
commit 3b9b5b3cb0
6 changed files with 116 additions and 4 deletions

View File

@@ -1,5 +1,6 @@
import Cocoa
import FlutterMacOS
import IOKit.ps
class MainFlutterWindow: NSWindow {
override func awakeFromNib() {
@@ -8,6 +9,22 @@ class MainFlutterWindow: NSWindow {
self.contentViewController = flutterViewController
self.setFrame(windowFrame, display: true)
let proxyChannel = FlutterMethodChannel(
name: "pixes/proxy",
binaryMessenger: flutterViewController.engine.binaryMessenger)
proxyChannel.setMethodCallHandler { (call, result) in
//
if let proxySettings = CFNetworkCopySystemProxySettings()?.takeUnretainedValue() as NSDictionary?,
let dict = proxySettings.object(forKey: kCFNetworkProxiesHTTPProxy) as? NSDictionary,
let host = dict.object(forKey: kCFNetworkProxiesHTTPProxy) as? String,
let port = dict.object(forKey: kCFNetworkProxiesHTTPPort) as? Int {
let proxyConfig = "\(host):\(port)"
result(proxyConfig)
} else {
result("No proxy")
}
}
RegisterGeneratedPlugins(registry: flutterViewController)
super.awakeFromNib()

View File

@@ -4,5 +4,11 @@
<dict>
<key>com.apple.security.app-sandbox</key>
<true/>
<key>com.apple.security.files.user-selected.read-write</key>
<true/>
<key>com.apple.security.network.client</key>
<true/>
<key>com.apple.security.network.server</key>
<true/>
</dict>
</plist>