Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

iOS 17+ support issues? #186

Open
vvulpe-reply opened this issue May 22, 2024 · 6 comments
Open

iOS 17+ support issues? #186

vvulpe-reply opened this issue May 22, 2024 · 6 comments

Comments

@vvulpe-reply
Copy link

vvulpe-reply commented May 22, 2024

Hi everyone,
I'm facing this issue where I cannot resolve the IP address when finding the service on a network, this is happening with iOS 17+ devices, while with iOS 15 it works ok. I don't have iOS 16 to test it.

This is the error that shows:
[Error: { NSNetServicesErrorCode = "-72007"; NSNetServicesErrorDomain = 10; }]

Is it possible that this is due to compatibility issues between Zeroconf and iOS 17+ ?
It seems to be something similar as iOS 14 problems that were happening in the past.

I have installed Zeroconf 0.13.8 and I have the correct keys inside info.plist file.

The issues seems to happen with connectivity boards "Inventek ISM43903".

@VoidBGS
Copy link

VoidBGS commented Jun 25, 2024

This error is a NSNetServicesTimeoutError. It means that your request for the service has timed out. In most cases it is due to insufficient permissions from Apple, which prevent your app from accessing the network discovery services.

As stated in the documentation of this package IOS 14 requires you to specify the services you want to scan for and a description for what you're using them. In the info.plist - This is true, but it is not enough for the latest iOS.

You also need to apply to Apple to use this permission using your development owner account.

You can read up more here - https://forums.developer.apple.com/forums/thread/705550

@6ase
Copy link

6ase commented Aug 12, 2024

@VoidBGS Got the same problem IOS 17.5.1. Added multicast, NSBonjourServices, NSLocalNetworkUsageDescription. Get aprove from apple acces to multicast - and still
[Error: { NSNetServicesErrorCode = "-72007"; NSNetServicesErrorDomain = 10; }]
At IOS 16.6 is working well..

@6ase
Copy link

6ase commented Aug 28, 2024

I have feedback from apple team, does it can help to fix the problem?
Apple Dev Forum

Of course, the other possibility is that the code has a bug and some benign change in iOS 17 is triggering this problem. And, honestly, that seems like the most likely option here. If Bonjour were fundamentally broken on iOS 17, I’d have heard about it.

I see a few paths forward:

You could dig into the Zeroconf implementation to see what Apple APIs it’s calling. That’ll let you find the source of this error, and we can then talk about why that API might return that error.

You could create a new test project using the process I described in Getting Started with Bonjour. Once you get that working, you have some reassurance that our Bonjour APIs are working correctly on iOS 17, and you can use that to guide your investigation of this error in your main app.

You could engage with the support channel for the third-party resource you’re using.

Share and Enjoy

@tannersatch
Copy link

I had similar issues, and ultimately resolved them by requesting the Multicast Networking entitlement from apple. I wrote a blog post about it here: https://dev.to/bfforward/how-to-use-react-native-zeroconf-with-expo-2kjc

Hopefully this helps someone

@mefjuu
Copy link

mefjuu commented Oct 24, 2024

I had similar issues, and ultimately resolved them by requesting the Multicast Networking entitlement from apple. I wrote a blog post about it here: https://dev.to/bfforward/how-to-use-react-native-zeroconf-with-expo-2kjc

Hopefully this helps someone

When did you send a request using Apple form? Currently the url (https://developer.apple.com/contact/request/networking-multicast) seems not working

@tannersatch
Copy link

I had similar issues, and ultimately resolved them by requesting the Multicast Networking entitlement from apple. I wrote a blog post about it here: https://dev.to/bfforward/how-to-use-react-native-zeroconf-with-expo-2kjc
Hopefully this helps someone

When did you send a request using Apple form? Currently the url (https://developer.apple.com/contact/request/networking-multicast) seems not working

It was about a month ago. The link worked for me just a few minutes ago. I did find this forum post that suggests using safari to open the link as some other browsers might not work. It also mentions that the account owner has to be the one to apply for the entitlement.

https://forums.developer.apple.com/forums/thread/707192

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants