We are working on an app that uses network extension(https://developer.apple.com/documentation/networkextension) with content filter. Our app filters both browser and socket flows. The NEFilterProviderConfiguration has both ‘filterBrowsers’ and ‘filterSockets’ set to true as given below.
NEFilterManager.shared().loadFromPreferences { error in
if let error {
NSLog("Preferences load error: \(error.localizedDescription)")
return
}
let newFilterConfig = NEFilterProviderConfiguration()
newFilterConfig.filterBrowsers = true
newFilterConfig.filterSockets = true
NEFilterManager.shared().providerConfiguration = newFilterConfig
//enabling content filter
NEFilterManager.shared().isEnabled = true
//saving the preference
NEFilterManager.shared().saveToPreferences { error in
if let error {
NSLog("Preference save error: \(error.localizedDescription)")
return
}
}
}
In the context of Family Sharing, we have established a group comprising one parent and two children, aged 4 and 15, and have enabled the 'Ask to Buy' feature for both children. When attempting to install an app from the App Store on a device linked to one of the child's iCloud accounts, a pop-up appears, guiding us to initiate the app installation request. However, upon initiating the request from the child's device, we expected the app installation notification to appear on the Apple device associated with the parent's iCloud account. Unfortunately, the notification is not received on the parent's device.
It's worth noting that app installation request notifications are displayed on the parent's device if we set the 'filterSockets' parameter of the NEFilterProviderConfiguration to false.
NEFilterDataProvider
All the flows received in the ‘NEFilterDataProvider’ are allowed.
override func handleNewFlow(_ flow: NEFilterFlow) -> NEFilterNewFlowVerdict {
return .allow()
}
Child Device details: iPad (8th generation), iPadOS 16.7