<!--
{
  "availability" : [
    "iOS: 9.0.0 - 26.0.0",
    "iPadOS: 9.0.0 - 26.0.0",
    "macCatalyst: 13.1.0 - 26.0.0",
    "visionOS: 1.0.0 - 26.0.0"
  ],
  "documentType" : "symbol",
  "framework" : "NetworkExtension",
  "identifier" : "/documentation/NetworkExtension/NEHotspotHelper/register(options:queue:handler:)",
  "metadataVersion" : "0.1.0",
  "role" : "Type Method",
  "symbol" : {
    "kind" : "Type Method",
    "modules" : [
      "Network Extension"
    ],
    "preciseIdentifier" : "c:objc(cs)NEHotspotHelper(cm)registerWithOptions:queue:handler:"
  },
  "title" : "register(options:queue:handler:)"
}
-->

# register(options:queue:handler:)

Register the application as a Hotspot Helper.

```
class func register(options: [String : NSObject]? = nil, queue: dispatch_queue_t, handler: @escaping NEHotspotHelperHandler) -> Bool
```

## Parameters

`options`

If not nil, a <doc://com.apple.documentation/documentation/Foundation/NSDictionary> containing `kNEHotspotHelperOption*` keys (currently just `kNEHotspotHelperOptionDisplayName`).

`queue`

The <doc://com.apple.documentation/documentation/Dispatch/dispatch_queue_t> to invoke the handle block on.

`handler`

The `NEHotspotHelperHandler` block to execute to process helper commands.

## Return Value

<doc://com.apple.documentation/documentation/Swift/true> if the registration was successful, <doc://com.apple.documentation/documentation/Swift/false> otherwise

## Discussion

Once this API is invoked successfully, the application becomes eligible to be launched in the background and participate in various hotspot related functions.

This method should be called once when the application starts up. Invoking it again will have no effect and result in <doc://com.apple.documentation/documentation/Swift/false> being returned.

> Warning:
> The application’s `Info.plist` must include a `UIBackgroundModes` array containing `network-authentication`.

> Warning:
> The application must set `com.apple.developer.networking.HotspotHelper` as one of its entitlements. The value of the entitlement is a boolean set to `true`.

---

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)