Atlantis not working anymore after update to macOS 15.4
Description
After updating to macOS 15.4 Atlantis stopped working sending network calls to Proxyman. One time Atlantis reported an error
[Atlantis][ERROR] didNotResolve ["NSNetServicesErrorDomain": 10, "NSNetServicesErrorCode": -72007]
Steps to Reproduce
- Update to macOS 15.4
- Configure Atlantis in your iOS Project
- Build and start iOS Project in simulator
- Observe there are no network calls recorded within Proxyman
Current Behavior
Proxyman stays empty and no network calls are recorded
Expected Behavior
Proxyman starts showing all network calls recorded by Atlantis
Environment
- App version: Proxyman 5.17.0
- macOS version: macOS Sequoia 15.4
- Xcode Version: 16.2 (16C5032a) / 16.3 (16E140)
/* Resolution of an NSNetService instance failed because the timeout was reached.
*/
NSNetServicesTimeoutError = -72007L,
It means Atlantis can't resolve and timeout.
Can you upgrade to the latest Atlantis and tries again?
I confirm that it works fine under macOS 15.3
Maybe your hostname is changed.
Try this method
Atlantis.start()
or
If you have many Macbooks on the same WiFi Network, you can specify your Macbook's name. Find your Macbook's name by opening Proxyman App -> Certificate Menu -> Install Certificate for iOS -> With Atlantis -> Click on "How to start Atlantis" ->
Atlantis.start("Your's Macbook Pro")
Thank you for your quick response :) We previously used Atlantis in Version 1.26.0. I've updated to 1.27.0 but to no success. Proxyman stays empty whether I specify the hostname or not :/
Under macOS 15.3 it was also working fine for me. Just after updating to macOS 15.4 it stopped working.
Just chiming in, I have the same error after updating to MacOS 15.4. Though I'm a developer and not using Atlantis.
@aikr-trifork May I ask: Is it the same Atlantis error or different errors because you're not using Atlantis?
@NghiaTranUIT Same error code, but not using Atlantis, I don't know what it is. But the problem seems to be something with MacOS 15.4 and internal network communication.
Server did not publish: errorDict [{
NSNetServicesErrorCode = "-72008";
NSNetServicesErrorDomain = 10;
}].
```
Let me update to macOS 15.4 and investigate it 👍
@aikr-trifork You get errors because you don't have NSLocalNetworkUsageDescription.
/* Missing required configuration for local network access.
*
* NSBonjourServices and NSLocalNetworkUsageDescription are required in Info.plist
*/
NSNetServicesMissingRequiredConfigurationError API_AVAILABLE(macos(11.0), ios(14.0), tvos(14.0)) API_UNAVAILABLE(watchos) = -72008L,
@NghiaTranUIT Thanks, but this is where it gets interesting as I do have that setup in my info.plist and it has been working before I updated. It also still works for my collegues which haven't updated.
Here's the info.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>NSLocalNetworkUsageDescription</key>
<string>This app requires access to your local network to detect and connect to nearby devices for improved connectivity.</string>
<key>NSBonjourServices</key>
<array>
<string>_example-service._tcp</string>
<string>_example-service._udp</string>
</array>
</dict>
</plist>
it seems Apple breaks something again 😢
Yes it seems like it :( I have created this StackOverflow post https://stackoverflow.com/questions/79550219/macos-15-4-nsnetserviceserrorcode-72008
Thank you for the update @NghiaTranUIT Good to know it's not a misconfiguration on my end. Hopefully you will find a fix soon :) Keep me updated
@rd-david-wahlandt @aikr-trifork turn out:
-
❌ It's a bug on iOS Simulator (Xcode 16.2) on macOS 15.4 -> It can't make a Bonjour connection
-
✅ It works if it runs on a real iPhone with the same config
-
Test with iPhone 15 Pro Max with iOS 18.3.2 and macOS 15.4
---------------------------------------------------------------------------------
---------- 🧊 Atlantis is running (version 1.27.0)
---------- Github: https://github.com/ProxymanApp/atlantis
---------------------------------------------------------------------------------
[Atlantis] Looking for Proxyman app in the network...
[Atlantis] 🔎 Found Proxyman at HostName = Mac-mini.local.
[Atlantis] ✅ Connect to Mac-mini.local.
[Atlantis] Connection established
Oh yeah I can confirm that. Ok that is a workaround for now to investigate requests. Unfortunately with Xcode 16.4 and iOS 18.4 in simulator it's the same issue :/ Hopefully that gets addressed soon. Thank you for looking into it
Same issue here, using Xcode 16.4 and iOS 18.4 This isn't just an Atlantis/proxyman issue, Rocketsim is also not working.
@magnett yes, we're aware of this issue with iOS Simulators.
Try to use Atlantis on iPhone/iPad, it will work as expected 👍
MacOS 15.4 (24E248) XCode 16.3 (16E140) Simulator iOS 18.3.1 Atlantis works just after restart MacOS. Then I tried simulator iOS 18.4 and it broke again. I repeated this test twice (reboot - iOS 18.3.1 - Atlantis works, iOS 18.4 - Atlantis doesn't work until reboot)
@Maxim-Inv confirmed it's a bug from macOS 15.4 with Bonjour Service and iOS Simulators. I tried but can't find any solution to fix it. Maybe we should wait macOS team to fix it
MacOS 15.4 (24E248) XCode 16.3 (16E140) Simulator iOS 18.3.1 Atlantis works just after restart MacOS. Then I tried simulator iOS 18.4 and it broke again. I repeated this test twice (reboot - iOS 18.3.1 - Atlantis works, iOS 18.4 - Atlantis doesn't work until reboot)
Thank you! Great finding and a good workaround until it is fixed
Apple fixed this in macOS 15.4.1.
Just tested with Xcode 16.3 (which did not work before) and it's working as expected now.
I cannot confirm. After updating to macOS 15.4.1 unfortunately I still get stuck on
[Atlantis] Looking for Proxyman app in the network...
Confirmed that macOS 15.4.1 doens't fix Atlantis issue with iOS Simulator. It worked with real device.
I see other app like RocketSim has the same error and fix it. Let me fix it
Same issue with Pulse Pro (https://github.com/kean/Pulse/issues/333). This app uses the same Bonjour Service like Atlantis
Same issue with Flutter: https://github.com/flutter/flutter/issues/166333#issuecomment-2784587657
I can't follow RocketSim's solution because Antoine (the author) completely removed the Bonjour Service that Atlantis is using. RocketSim only runs on Simulators, so it's safe to make a direct connection to their local server without using it.
Atlantis requires Bonjour Service because Atlantis can run on real devices, and it's important to discover Proxyman on macOS on the same WiFi network.
Solution:
- ✅ Try using Atlantis on Real devices.
- Wait until Apple fixes it.
Better solution:
- Use Certificate Menu -> Install certificate for iOS -> Simulators -> Follow 3 steps to install and trust Proxyman Certificate.
Then, Proxyman can capture and decrypt HTTPS Data as usual. Like Atlantis
- Doc: https://docs.proxyman.com/debug-devices/ios-simulator
Yep, you are all right, it's still broken. It sometimes work, it sometimes does not. Daaarn, this is so annoying. What the hell has Apple fracked up here.
@radianttap @rd-david-wahlandt @magnett Good news, it's fixed 👍
Please upgrade to Atlantis 1.28.0 👍
Video
https://github.com/user-attachments/assets/366d1a2c-5e83-4047-893a-84be6620d72e
What the hell has Apple fracked up here.
From what I see, from macOS 15.4, Bonjour Service (or any Local Networks Services, like Peer-to-peer/broadcast/...) requires running on a physical iOS device. They drop support for iOS Simulators.
Great news! Thank you, @NghiaTranUIT