I applied for the multicast network entitlement here on 1/2/21 and they got back to me on 1/5/21. My application was for devices on the same network. It turns out that you only need the entitlement for *arbitrary* or wildcard services. Here is a brief snippet of the convo with their response about wildcards at the end:
Initial application
Explain why your app needs to send multicast or broadcast traffic, or browse for all Bonjour service types
Me:
If my app has 2 or more iPhones (userA and userB) connected using Bonour, NWConnection, NWListener, and NWBrowser, if I'm userA, press the mapButton for a search I would expect userB to immediately appear ...
Response form rep:
Thanks for your interest in multicast networking. It sounds like you’re able to use Bonjour / Multicast DNS, which doesn’t require any entitlement, but only requires a change to your Info.plist. If you have further questions about how to use the APIs, please follow up on the developer forums.
Me
My main concern is submitting my app to the App Store to support iOS 14 without the multicast entitlement and it gets rejected for not having it. I'm a little lost about iOS 14, the multicast entitlement, Bonjour via NWConnection which is what I intend to use when I update my app to support local networking, and the App Review Team. According to this doc and this doc-
"Your app must have this entitlement to send or receive IP multicast or broadcast on iOS. It also allows your app to browse and advertise arbitrary Bonjour service types. This entitlement requires permission from Apple before you can use it in your app. You can test your app using the iOS and iPadOS simulators without an active entitlement, but using multicast and broadcast networking on physical hardware requires the entitlement."
Why do you say that all I need is to add the change to my info.plist which I did:
-PrivacyPrivacy - Local Network Usage Description: My app needs your permission to use the local network to connect with users around you.
-Bonjour services: _myApp._tcp
Response from rep:
The entitlement is needed only to be able to browse and advertise arbitrary or wildcard services. If you’ve added the one type you use to your Info.plist, as you detail, you do not need the entitlement. If your app is working fine as-is, you don’t need to do anything more!
Best,
Apple Networking