<!--
{
  "availability" : [
    "iOS: 26.2.0 -",
    "iPadOS: 26.2.0 -",
    "macCatalyst: 26.2.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "WiFiInfrastructure",
  "identifier" : "/documentation/WiFiInfrastructure/WINetworkSharingProvider",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "Wi-Fi Infrastructure"
    ],
    "preciseIdentifier" : "s:18WiFiInfrastructure24WINetworkSharingProviderC"
  },
  "title" : "WINetworkSharingProvider"
}
-->

# WINetworkSharingProvider

A provider that delivers updated Wi-Fi network information to your app extension.

```
class WINetworkSharingProvider
```

## Overview

Use `WINetworkSharingProvider` to receive real-time updates about Wi-Fi networks the system shares with connected accessories and to present network sharing interfaces to people. The provider manages the lifecycle of network-sharing operations and coordinates between your app extension, the system, and connected accessories.

The provider delivers network updates through an async sequence that you can filter and process according to your app’s needs. Each event contains the current state of the shared networks, along with flags indicating when new networks become available or when your container app requests sharing.
When networks become available for sharing or when your accessory needs additional networks, use the provider to present system UI that allows people to select and share networks. The interface can integrate with your accessory’s scan results to show signal strength and compatibility information.

> Important: Your `WiFiNetworkSharing` app extension can only use the methods in this class. The extension needs both the <doc://com.apple.documentation/documentation/BundleResources/Entitlements/com.apple.developer.wifi-infrastructure> entitlement with the `WiFiNetworkSharing` capability declared and the <doc://com.apple.documentation/documentation/BundleResources/Entitlements/com.apple.developer.accessory-transport-extension> entitlement.

## Topics

### Creating network sharing provider instances

[`init(for:)`](/documentation/WiFiInfrastructure/WINetworkSharingProvider/init(for:))

Creates a provider for the specified accessory.

### Getting accessory data

[`accessory`](/documentation/WiFiInfrastructure/WINetworkSharingProvider/accessory)

The accessory that receives the shared networks.

### Getting network updates

[`networkEvents(matching:)`](/documentation/WiFiInfrastructure/WINetworkSharingProvider/networkEvents(matching:))

Returns an async sequence of network events, containing current shared networks and future updates.

[`NetworkEvent`](/documentation/WiFiInfrastructure/WINetworkSharingProvider/NetworkEvent)

An event that occurred, indicating an update to the available shared networks.

[`Network`](/documentation/WiFiInfrastructure/WINetworkSharingProvider/Network)

A Wi-Fi network to share with a connected accessory.

### Getting information about access point connections

[`AccessPointConnection`](/documentation/WiFiInfrastructure/WINetworkSharingProvider/AccessPointConnection)

A Wi-Fi access point the host is currently connected to, which may be shared with a connected accessory.

[`AccessPointConnectionEvent`](/documentation/WiFiInfrastructure/WINetworkSharingProvider/AccessPointConnectionEvent)

An event that indicates an update to the available shared access points.

[`accessPointConnectionEvents(matching:)`](/documentation/WiFiInfrastructure/WINetworkSharingProvider/accessPointConnectionEvents(matching:))

Returns an async sequence of access point events containing the currently connected access point(s) and future updates.

### Displaying network selection

[`presentAskToShareUI(scanProvider:)`](/documentation/WiFiInfrastructure/WINetworkSharingProvider/presentAskToShareUI(scanProvider:))

Presents system UI asking people to share available networks with an accessory.

[`AccessoryScanRequest`](/documentation/WiFiInfrastructure/WINetworkSharingProvider/AccessoryScanRequest)

A request for the accessory to scan for available Wi-Fi networks.

[`AccessoryScanResponse`](/documentation/WiFiInfrastructure/WINetworkSharingProvider/AccessoryScanResponse)

A scan response from the accessory containing Wi-Fi scan results, if any.

[`AccessoryScanResult`](/documentation/WiFiInfrastructure/WINetworkSharingProvider/AccessoryScanResult)

An access point that the accessory was able to discover in its Wi-Fi scans.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)