From f066a116085a99d10b392e2c037f33d39661908c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Leon=20B=C3=B6ttger?= Date: Fri, 12 Sep 2025 11:37:48 +0200 Subject: [PATCH] Fix: iOS app advertised to scan even though not connected to Wi-Fi --- NearbyShare/Connection/NearbyConnectionManager.swift | 6 +++--- .../xcshareddata/swiftpm/Package.resolved | 4 ++-- QuickDrop/AppDelegate.swift | 2 +- QuickDropiOS/ContentView.swift | 7 ++++--- 4 files changed, 10 insertions(+), 9 deletions(-) diff --git a/NearbyShare/Connection/NearbyConnectionManager.swift b/NearbyShare/Connection/NearbyConnectionManager.swift index 107eee0..16043f1 100644 --- a/NearbyShare/Connection/NearbyConnectionManager.swift +++ b/NearbyShare/Connection/NearbyConnectionManager.swift @@ -44,7 +44,7 @@ public class NearbyConnectionManager: NSObject, NetServiceDelegate, InboundNearb public static let shared = NearbyConnectionManager() @Published var attachments: AttachmentDetails? = nil - @Published var hasLocalNetworkAccess = true + @Published var hasLocalNetworkPermission = true @Published var isConnectedToLocalNetwork = true public var connectionUpdateCallback: (Bool) -> Void = { _ in } { @@ -248,13 +248,13 @@ public class NearbyConnectionManager: NSObject, NetServiceDelegate, InboundNearb log("[NearbyConnectionManager] Browser failed: \(error)") case .ready: log("[NearbyConnectionManager] Browser ready") - self.hasLocalNetworkAccess = true + self.hasLocalNetworkPermission = true case .waiting(let error): log("[NearbyConnectionManager] Browser waiting: \(error)") if error == NWError.dns(DNSServiceErrorType(kDNSServiceErr_PolicyDenied)) { log("[NearbyConnectionManager] Local network access not granted.") - self.hasLocalNetworkAccess = false + self.hasLocalNetworkPermission = false } default: break diff --git a/QuickDrop.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/QuickDrop.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved index 40aedf7..06ad0c9 100644 --- a/QuickDrop.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/QuickDrop.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -43,7 +43,7 @@ "location" : "https://github.com/leonboe1/LUI.git", "state" : { "branch" : "main", - "revision" : "85f746ee449d85a36722c3cafe9403525ef3a719" + "revision" : "2e656d5e3634e47f95f81af86a2a56080f05af88" } }, { @@ -124,7 +124,7 @@ "location" : "https://github.com/siteline/swiftui-introspect", "state" : { "branch" : "main", - "revision" : "9bedf1e79c7b7c34b35b74bef126f56d2400ef7f" + "revision" : "aa15494beb99fcc4c4248ea71928bd4fef947c87" } } ], diff --git a/QuickDrop/AppDelegate.swift b/QuickDrop/AppDelegate.swift index 47ac4b8..65be5be 100644 --- a/QuickDrop/AppDelegate.swift +++ b/QuickDrop/AppDelegate.swift @@ -122,7 +122,7 @@ class AppDelegate: NSObject, NSApplicationDelegate, UNUserNotificationCenterDele } } - log("Application did finish launching") + log("[AppDelegate] Application did finish launching") } diff --git a/QuickDropiOS/ContentView.swift b/QuickDropiOS/ContentView.swift index 2d2bbb4..b2d3329 100644 --- a/QuickDropiOS/ContentView.swift +++ b/QuickDropiOS/ContentView.swift @@ -79,7 +79,7 @@ struct DeviceListView: View { .padding(.top, 8) .frame(maxWidth: .infinity, alignment: .leading) - if !nearbyConnectionManager.hasLocalNetworkAccess { + if !nearbyConnectionManager.hasLocalNetworkPermission { CardView(backgroundColor: .red, title: "NoNetworkAccess", titleSymbol: "network.slash") { CardSubView(symbol: "exclamationmark.triangle.fill", text: "NoLocalNetworkAccessDescription") } @@ -137,7 +137,7 @@ struct DeviceListView: View { } - if nearbyConnectionManager.hasLocalNetworkAccess && nearbyConnectionManager.hasLocalNetworkAccess { + if nearbyConnectionManager.hasLocalNetworkPermission && nearbyConnectionManager.isConnectedToLocalNetwork { HStack(spacing: 8) { Text("SearchingForDevices") .font(.system(size: 14)) @@ -178,7 +178,8 @@ struct DeviceListView: View { NearbyConnectionManager.shared.stopDeviceDiscovery() } } - .animation(.smooth, value: nearbyConnectionManager.hasLocalNetworkAccess) + .animation(.smooth, value: nearbyConnectionManager.hasLocalNetworkPermission) + .animation(.smooth, value: nearbyConnectionManager.isConnectedToLocalNetwork) .navigationBarItems(trailing: ZStack { if isShareExtension() { XButton(action: { NearbyConnectionManager.shared.attachments?.closeView?() })