---
title: "init(browseDescriptor:parameters:access:)"
framework: devicediscoveryui
role: symbol
role_heading: Initializer
path: "devicediscoveryui/dddevicepickerviewcontroller/init(browsedescriptor:parameters:access:)"
---

# init(browseDescriptor:parameters:access:)

Creates a view controller with the parameters and access level you specify that displays the available devices on network.

## Declaration

```swift
@MainActor @preconcurrency convenience init?(browseDescriptor: NWBrowser.Descriptor, parameters: NWParameters? = nil, access: DDDevicePairingAccess = .default)
```

## Parameters

- `browseDescriptor`: A descriptor for your application service. To create an application service descriptor, call NWBrowser.Descriptor.applicationService(name:options:) and provide a name for the service.
- `parameters`: Parameters for your network connection. Use doc://com.apple.documentation/documentation/Network/NWParameters/applicationService to create a default set of parameters that create an encrypted connection with the other devices. You can also add a doc://com.apple.documentation/documentation/Network/NWProtocolFramer to provide an application-level messaging protocol.
- `access`: The doc://com.apple.devicediscoveryui/documentation/DeviceDiscoveryUI/DDDevicePairingAccess access level, the default is DDDevicePairingAccess.default.

## See Also

### Creating device picker view controllers

- [init(browseDescriptor:parameters:)](devicediscoveryui/dddevicepickerviewcontroller/init(browsedescriptor:parameters:).md)
