On iOS 18, when XCUITest encounters an "Application has not loaded accessibility" error after the 60 second timeout, it performs an undocumented auto-recovery ("Setting up automation session") instead of halting the test as documented. This leaves the XCUITest framework in a corrupted state, causing subsequent tests in the same session to fail with unexpected behavior.
Expected Behavior (per Apple documentation):
Any failure in the launch sequence will be reported as a test failure and the test will be halted at that point.
Actual Behavior:
XCUITest waits 60 seconds for accessibility to load
Logs "Application has not loaded accessibility" error
Instead of halting, performs "Setting up automation session" (auto-recovery)
Test continues with corrupted framework state
Subsequent tests in the same session fail with phantom element queries
Steps
Run XCUITest suite on a real iOS 18 device
Have an app with moderately heavy initialization (e.g., synchronous network operations during bootstrap)
Observe intermittent "accessibility not loaded" errors
When error occurs, subsequent tests fail with unexpected behavior
Test Logs Evidence
First test (accessibility failure + recovery):
t = 11.11s Wait for accessibility to load
t = 71.14s Capturing diagnostic spindump
t = 76.24s Assertion Failure: Application 'com.example.app' has not loaded accessibility
t = 76.26s Setting up automation session ← Undocumented recovery
t = 77.29s Tear Down
Second test (corrupted state):
t = 35.01s Tap "signin-button"
t = 35.55s Waiting for "bannerButtonStackFirstItem" ← Query NOT in test code!
t = 40.58s Assertion Failure: Failed to find element
The second test executes element queries that do not exist in its source code, indicating leaked/corrupted state from the previous test's failed recovery.
Note: The tearDown() method terminates the app but cannot reset the internal state of the XCUITest framework itself, so corruption persists across tests.
We are observing this behavior consistently on iOS 18 real devices. We would like to know:
Is this a known issue with XCUITest on iOS 18?
Is anyone experiencing similar "accessibility not loaded" failures followed by auto-recovery?
Is the "Setting up automation session" recovery behavior intentional or a bug?
Is there a recommended workaround to prevent framework state corruption between tests?
General
RSS for tagDive into the vast array of tools and services available to developers.
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
Hello,
I am experiencing an authentication issue when submitting my Expo iOS app to App Store Connect using the Expo EAS CLI from the terminal.
The exact flow is as follows:
I run the submit command in the terminal.
I am prompted to enter my Apple ID.
After entering the Apple ID, I am prompted to enter my Apple ID password.
After the password is accepted, I am prompted to enter a 6-digit verification code.
I receive the 6-digit code immediately via SMS or phone call.
I enter the code correctly and immediately, but the CLI always returns “Invalid code.”
This happens every time.
Important notes:
The Apple ID and password are correct.
The 6-digit code is entered immediately and exactly as received.
Logging in to App Store Connect via a web browser with the same Apple ID, password, and SMS code works without any issue.
The problem only occurs when authenticating through the terminal using Expo EAS CLI.
Could you please advise why the verification code is being rejected in the CLI and how I can successfully authenticate and submit my app?
Topic:
Developer Tools & Services
SubTopic:
General
We're having issues getting Sign in with Google to function on TestFlight (not experiencing these issues on iOS Browser) with user unable to be authorised and proceed to logged in screens of our app.
Below are the three sign-in methods tested and the exact results for each.
Button 1: Default
Standard Google Sign-In button (Google JavaScript SDK) embedded in the frontend.
Uses the normal OAuth browser redirect flow.
Auth URL: https://accounts.google.com/o/oauth2/v2/auth?...
Sometimes disallowed_useragent error.
Other times a 400 invalid_request error.
In most cases the callback is never triggered inside the wrapper.
Appears that the wrapper does not retain cookies/session data from the external Google window.
Button 2: Custom
Custom button calling Google OAuth through our own redirect handler.
Explicitly set a custom user-agent to bypass disallowed user agent logic.
Later removed user-agent override entirely for testing.
Added multiple ATS (App Transport Security) exceptions for Google domains.
Added custom URL scheme to Info.plist for OAuth redirect.
Changing the user-agent had no effect.
ATS exceptions + scheme support verified and working.
Redirect still fails to propagate tokens back to the WebView.
In tests a few weeks ago we got to Google’s login page, but it never returned to the app with a valid code. Now
we are consistently getting disallowed_useragent error.
Button 3: Default
Same as Button 1 however tested outside of Vue.js with just plain JavaScript.
Added new Google domain exceptions and updated redirect URIs.
Behaviour matches Button 1
Google account selection sometimes worked, however now consitently disallowed_useragent error
Additional Technical Attempts
User-Agent Modifications
Set UA to standard desktop Chrome → no effect.
Removed UA override → no effect.
ATS / Domain / Scheme Configuration
Added:
accounts.google.com
.googleusercontent.com
*.googleapis.com
I work at a well-established university with a business journal that is over 25 years old. We have been waiting now for almost four months to have our Apple News account reviewed. In what world is this OK? No ability to communicate with anyone or have any updates except to log in once a month to see the 'under review' message still there. Seriously?
I’m using Developer iOS app to watch WWDC session videos. i notice it doesn’t record a video as watched after I watched it and even manual marking it using Mark as Watch has no effect.
I remember the issue started several years ago because some old WWDC videos were marked watches.
Topic:
Developer Tools & Services
SubTopic:
General
I am developing an iOS in-app SDK for collecting code coverage data. The SDK writes coverage data to a specified file by calling __llvm_profile_set_filename and __llvm_profile_write_file. This implementation worked correctly until I switched to Xcode 26.0 to build my project. Now, when __llvm_profile_write_file() is executed, it crashes with the following error stack. Can anyone provide any assistance?
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Subtype: KERN_INVALID_ADDRESS at 0x0000000000000001
Exception Codes: 0x0000000000000001, 0x0000000000000001
Termination Reason: Namespace SIGNAL, Code 11, Segmentation fault: 11
Terminating Process: exc handler [454]
Thread 96 name: Dispatch queue: com.test-coverage.processing
Thread 96: Crashed:
0 Demo 0x122602ea8 initializeValueProfRuntimeRecord (in Demo) (InstrProfilingValue.c:351)
1 Demo 0x00000001226064c0 writeOneValueProfData (in Demo) (InstrProfilingWriter.c:153)
2 Demo 0x0000000122606308 writeValueProfData (in Demo) (InstrProfilingWriter.c:234)
3 Demo 0x00000001226060d0 lprofWriteDataImpl (in Demo) (InstrProfilingWriter.c:401)
4 Demo 0x0000000122605d98 lprofWriteData (in Demo) (InstrProfilingWriter.c:261)
5 Demo 0x0000000122604804 writeFile (in Demo) (InstrProfilingFile.c:536)
6 Demo 0x122604664 __llvm_profile_write_file_alias + 228
7 Demo 0x000000011c6dd108 -[BDTestCoverage p_dumpMainCoverageInfoWithCustomKey:] (in Demo) (TestCoverage.m:995)
8 Demo 0x000000011c6dcef8 -[BDTestCoverage p_dumpAllCoverageProfileWithCustomKey:] (in Demo) (TestCoverage.m:970)
Hi everyone, I've been trying to integrate with Microsoft EntraID for more than a week. I've followed every tutorial, ChatGPT, Cloude.ai, etc, but nothing works, and I realized that the problem is setting up information inside the Info.plist correctly. In the old days, we were able to edit it, but now it's a mess. I'm working with Xcode 15.2. Unfortunately, my computer does not accept more upgrades. Yes, I know I have to buy a new one, but I'm not sure if the new version will help me solve that. Does anyone have a project example or some experience with Microsoft EntraID authentication using SwiftUI?
All the examples in the project are really old and usually don't use SwiftUI
Topic:
Developer Tools & Services
SubTopic:
General
Hello all,
I am building a simple Flutter app, and I want to support entering the app through an email.
I have used flutter deep links on android and all works well, but for some reason on IOS it doesnt.
What I have achieved:
When clicking the link I do get navigated into the app, but I get navigated to whatever the last screen was, regardless of the path in the URL. Furthermore, the logical code inside the app doesnt seem to run either - no logs are printed etc.
I have even tried following the flutter tutorial at https://docs.flutter.dev/cookbook/navigation/set-up-universal-links
to the letter, and it doesnt work
I am using:
Flutter 3.22.3
Go Router 14.2.7
Thanks in advance
Topic:
Developer Tools & Services
SubTopic:
General
Hello,
In my IOS app, I have been working on implementing a third-party library's xcframework into my app. (They don't provide spm or cocoapods). However, whenever I import the XCFramework into my app, the build is successful, but when uploading to App Store Connect, I receive an email with an error stating the Swift Support folder is missing. This app was made using SwiftUI. I have a sample project linked below. Other apps also use this framework, so I'm not sure where I'm going wrong.
Project
How to add speech recognition in + capability in Xcode there is no "Speech Recognition" in the list.
I have an MAUI based application build and ready for the distribution. The application is working perfectly in the debug environment on the simulator. So the app logic is working correctly as expected without any errors.
But when a release build is created the application crashes on the simulator and physical device.
I'm developing the application using .Net 10 framework with target device iOS 26. The Supported OS Platform is set to 15.0 in csproj file. Also have the entitlements. plist file set in the csproj. The IDe used is Visual Studio Code for Mac (MAC OS). The application uses MSAL for the login / authentication purpose (Microsoft.Identity.Client) and SQLite Database (Sqlite-net-pcl)
Message:
Kindly guide me to build the application correctly in release version and get the ipa file ready for the in house distribution that could be deployed correctly on the physical device with iOS 18 / 26.
Topic:
Developer Tools & Services
SubTopic:
General
Hello all,
I am trying to build a Flutter app that supports a link the opens the app.
I would like the link to be sent by email, and when clicked I would like to app to open. On android all works fine, but on IOS it doesnt.
I currently have:
A link that does open the app but doesnt navigate to the correct screnn - it just shows the last screen that app was on.
I have tried following the tutorial on https://docs.flutter.dev/cookbook/navigation/set-up-universal-links to the letter but still doesnt work
I am using:
Flutter 3.22.3
Go Router 14.2.7
Thanks in advance
So I can see from the documentation that XCTAssertEqual(x, y) becomes #expect(x == y), but what about XCTAssertEqual(x, y, accuracy: 0.2)?
Does something already exist or do we need to write a more involved statement to see if x is less than y plus z and more than y minus z?
Hi,
I really appreciate the C++ binding provided.
I got the metal-cpp source code from the website at Getting Started. However, I could not find the same for metal-cpp-extensions. Is it not available or do we have to always extract it from the sample code?
Thanks.
Hi there! I am not a coder, but I built an app in ADALO just for in-house use in my company, PetroImaging. The app looked the way I wanted it to in the preview mode in ADALO, but when my app was approved and ready for download in the app store, a lot of content was missing. Many buttons that linked to screens were just gone - even though they were there in the preview and the buttons are formatted correctly in adalo. How can I get my content that I need back on my app so the employees can being using it?
Topic:
Developer Tools & Services
SubTopic:
General
Hello!
We would like to know the steps required to build an application and submit it to the Apple Store using an automated process on a server.
Here are our conditions:
We have a server running macOS Sonoma 14.6.1 on Amazon EC2.
Xcode 16.1 (Build version 16B40) is installed.
We use only console commands, as the GUI is not available.
We use Cordova to add the iOS platform to the application.
A private key, certificate, and provisioning profile have already been created and are located on the server.
Could you please clarify:
What commands are needed to configure the Keychain to use the certificate and provisioning profile?
How can we build the application using xcodebuild?
What are the steps to sign and submit the application to the App Store with minimal human interaction?
Thank you in advance for your assistance!
Hi,
From App analytics, we found that our app crashed from time to time on users' devices despite that we have tested it thoroughly on our devices. We are doubt that it's the reason why we can't retain them. But how can we get the crash reports for the app installed on user devices? We have no users' emails and can't ask them directly.
I am using macOS’s /bin/date command, both in Terminal and via AppleScript (do shell script). I noticed inconsistent behaviour with the %N format specifier for nanoseconds:
• On some Macs, date +%s%N returns numeric nanoseconds as expected.
• On other Macs, the same command returns a literal N or fails when coerced to a number.
• This occurs across different macOS versions and on both Intel and Apple Silicon machines.
My understanding is that macOS ships BSD date, which does not officially document %N. I am trying to determine:
1. Is %N in /bin/date officially supported on macOS, and if so, on which versions?
2. If %N is not supported, what is Apple’s recommended, portable method for obtaining sub-second or millisecond timestamps in shell scripts or AppleScript across all macOS versions?
I admit I am doing something unusual, and I would not be surprised if it didn't work. I am surprised, however, because after performing the equivalent operations on four bundles, all of the bundles work fine on macOS 15.6.1, but only two of them work on macOS 26.1 (beta 2). I don't know what causes the different outcomes.
What I am trying to do is get Java to pass the macOS 26 AppKit UI SDK linkage checking without having to rebuild the JDK using Xcode 26. Rebuilding works for the latest SDK, but it is very inconvenient and may not work for older JDKs. It usually takes a while before the JDK build team successfully transitions to a new Xcode release.
My approach is to use vtool to update the sdk version in the LC_BUILD_VERSION load command of $JAVA_HOME/bin/java, which is the launching executable for the JDK.
I performed this operation on four JDKs: 25, 21, 17, and 11. (I ran vtool on macOS 15.)
It was completely successful on JDK 25 and 21. The JDK launches correctly on macOS 15 and macOS 26. On macOS 26, AppKit uses the new UI, which is the desired outcome. The JDK runs despite that fact that I signed the modified $JAVA_HOME/bin/java with my developer ID, which is inconsistent with the JDK bundle signature. (Redoing the bundle signing is part of the JDK build process; if that were necessary, I would stick with rebuilding the JDK.)
The operation was not successful on JDK 17 and 11. I noticed two problems, which are not obviously related.
When vtool created the new version of the java program, it lost the tool definition.
$ vtool -show-build-version java
java:
Load command 10
cmd LC_BUILD_VERSION
cmdsize 32
platform MACOS
minos 11.0
sdk 11.1
ntools 1
tool LD
version 609.8
$ vtool -set-build-version 1 10.0 26.0 -output a.out java
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/vtool warning: code signature will be invalid for a.out
$ vtool -show-build-version a.out
a.out:
Load command 22
cmd LC_BUILD_VERSION
cmdsize 24
platform MACOS
minos 10.0
sdk 26.0
ntools 0
Adding back the tool definition didn't seem to matter.
When I try to run the revised executable (in the context of the JDK bundle), it works on macOS 15, but on macOS 26, it is rejected as damaged. If I run the revised executable outside the JDK bundle, it runs (but fails because it can't find the rest of the JDK, which is expected).
In all cases, GateKeeper rejects the revised executable because it has not been notarized, but that doesn't seem to stop the program from executing.
Topic:
Developer Tools & Services
SubTopic:
General
Tags:
macOS
Linker
Gatekeeper
Signing Certificates
We are developing a cross platform c++ application. We also use some objective-c (no swift) and specific Apple frameworks like AVFoundation, CoreML in the MacOs version of our software.
We use Apple Clang as compiler when building for MacOs. As our code is primarily c++ we would like to use the latest and greatest c++ 20 features.
So we are looking into using vanilla clang instead, the builds with vanilla clang seem to work fine, however our concern is that we might have overlooked possible issues that could arise. So our question is whether there are specific things we need to address when switching compilers, are there things that we need to be aware of?
In the end we just want to know if switching compilers won't cause problems we can't oversee.
So we would like to know if others took the same steps and what your thoughts/experiences are regarding this?
Topic:
Developer Tools & Services
SubTopic:
General