Post

Replies

Boosts

Views

Activity

Hide OS logs coming out of the Network framework (category: com.apple.network)
I'm establishing a connection with NWListener and NWConnection which is working great. However, if the listener disappears, a lot of logs are appearing: Is there a way to hide these logs? I'm aware of OS_ACTIVITY_MODE=disabled, but that will also hide a lot of other logs. I also know you can hide these using Xcode's filtering. I'm looking for a programmatically way to hide these completely. I'm not interested in seeing these at all, or, at least, I want to be in control. Thanks!
4
0
43
2w
Network Link Conditioner using a Network Extension
Currently, I've been able to completely block requests using a Content Filter Network extension. Right now, I'm looking to build a Network Link Conditioner that applies to an individual app only. The Network Link Conditioner allows selecting profiles with specific settings: Downlink Packages Dropped Bandwidth Delay Uplink Bandwidth Packets dropped Delay My question Is it possible to reproduce this behavior using a Network Extension and if so, which type of network extension should I use?
2
0
783
Jun ’24
iPhone Mirroring API
I'm super excited about the announcement of iPhone Mirroring on macOS. Will there be a way to communicate with a connected device throughout an API? E.g., will we developers get a way to write automation or interact with the connected device via code?
7
0
1.8k
Jun ’24
NWPathMonitor mocking for Simulator using Network Extension
Is it possible to mock the behavior of NWPathMonitor for a specific app? The scenario I want to support I've created an app called RocketSim, a developer tool for Xcode's Simulator. I've already created Airplane mode, which disables networking calls from URLSession from a specific bundle identifier app installed on the Simulator. Now, I want to support blocking NWPathMonitor as well. I believe the Simulator uses macOS's NWPathMonitor and does not use any specific HTTP request or similar to determine the reachability state. Is there a way I can make NWPathMonitor return unsatisfied when my 'airplane mode' is turned on? Potentially using a Network Extension?
1
0
767
Mar ’24
Understanding PHPickerConfiguration.AssetRepresentationMode.current
The documentation for this API mentions: The system uses the current representation and avoids transcoding, if possible. What are the scenarios in which transcoding takes place? The reason for asking is that we've had a user reaching out saying they selected a video file from their Photos app, which resulted in a decrease in size from ~110MB to 35MB. We find it unlikely it's transcoding-related, but we want to gain more insights into the possible scenarios.
3
1
974
Aug ’23
Network Extension receives stop command right after start
Right after starting my Network Extension I see logs about it being stopped. This is unexpected, since I don't request a stop myself. See: Logs Secondly: I'm trying to build a Network Provider to stop any requests coming from a specific app. Am I correct I can do that using the NEFilterDataProvider without any filters configured? override func startFilter(completionHandler: @escaping (Error?) -> Void) { log.log(level: .debug, "startFilter NEW3") completionHandler(nil) }
2
0
709
Mar ’23
Network Extension Development Flow
I've been following these instructions and managed to get a development flow running: https://developer.apple.com/forums/thread/725805 However, my extension changes are only applied as follows: Change the code Remove the extension using OSSystemExtensionRequest.deactivationRequest Restart Mac If I don't do that, it seems that the old version of my extension keeps running. I confirmed this based on OSLogs that I added. In other words: how can I ensure during development my latest code gets executed?
2
0
525
Mar ’23