Yaman
Yaman

Reputation: 3991

iOS 9 - avoid popping Captive Portal using the new NEHotspotHelper

I need to provide access to a captive network but only to a specific set of users so I'll handle authentication through the app.

Before iOS 9, I was able to use CNSetSupportedSSIDs to avoid the system from displaying the captive portal. Since iOS 9, CNSetSupportedSSIDs always returns false.

Is the new NetworkExtension API, especially NEHotspotHelper, will lead me to the same result as CNSetSupportedSSIDs ? I'm not able to test by myself as I've just ask Apple for entitlement (and I heard it takes 3 weeks to get a reply ...).

Thanks for your help

Upvotes: 0

Views: 992

Answers (2)

applezqp
applezqp

Reputation: 1

NEHotspotHelper can prevent captive portal from popping up.

To handle a hotspotHelper command:

Step 1. kNEHotspotHelperCommandTypeEvaluate:

NEHotspotHelperResponse *response = [command createResponse:kNEHotspotHelperResultSuccess];
[network setConfidence:kNEHotspotHelperConfidenceHigh];
[response setNetwork:network];
[response deliver];

Step 2. kNEHotspotHelperCommandTypeAuthenticate:

NEHotspotHelperResponse *response = [command createResponse:kNEHotspotHelperResultSuccess];
[response deliver];

Upvotes: 0

Sabby
Sabby

Reputation: 2592

Yaman I am not sure about the answer. But for your reply from Apple Developer team, it doesn't take 3 weeks. You might get reply with in 2-3 days. You have 2 chances to ask questions to the developer team with the paid developer account. I myself had got the answer with in 2 days. Just keep the hope

Upvotes: 0

Related Questions