We recently integrated MetricKit into our app; however, the 90th percentile data does not seem to match the data in Xcode Organizer. The values reported by MetricKit appear to be higher. Additionally, it looks like data for previous app versions is not being updated in Organizer as adoption of the latest version increases.
Has anyone else experienced this issue? Could there be a delay in data updates for older versions in Organizer? Are there any known limitations or best practices for ensuring consistency between MetricKit and Xcode Organizer data? Any guidance would be greatly appreciated.
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
I'm developing for compliance with Texas law in the United States.
Currently, I'm encountering an issue where I want to test the feature point "when the app undergoes significant changes, a supervised user initiates a request." However, during actual testing, the app pops up an error message: "Can't Ask, An Unknown error occurred."
Additionally, I see the following error message in the Xcode Console: "Error Domain=AskToCore.ATMessageComposeValidationError Code=4 'The user is in a region that does not support this type of ask.' UserInfo={NSLocalizedFailureReason=The user must be in a supported region to use this feature., NSLocalizedRecoverySuggestion=Please ensure the user is in an eligible region., NSLocalizedDescription=The user is in a region that does not support this type of ask.}"
I am indeed not in the Texas region.
I want to conduct full-process testing before the feature is released to the App Store.
What should I do?
Apart from Sandbox testing (which, in fact, doesn't show any pop-ups either), how can I test under real-world conditions?
There is an error when building binutils.
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/_stdio.h:318:7: note: to match this '('
/Users/koudah/elf2x68k/build_gcc/src/binutils-2.42/zlib/zutil.h:147:33: note: expanded from macro 'fdopen'
147 | # define fdopen(fd,mode) NULL /* No fdopen() */
| ^
Topic:
Developer Tools & Services
SubTopic:
General
Hello Apple Developer Support,
I am writing to seek assistance with an issue we are experiencing in our SwiftUI application concerning UI test cases.
Our application uses accessibility labels that differ slightly from the display content to enhance VoiceOver support. However, we have encountered a problem where our UI test cases fail when the accessibility label does not match the actual display content.
Currently, we are using accessibility identifiers in our tests, but they only retrieve the accessibility label, leaving us without a method to access the actual display content. This discrepancy is causing our automated tests to fail, as they cannot verify the visual content of the UI elements.
We would greatly appreciate any guidance or solutions you could provide to address this issue. Specifically, we are looking for a way to ensure our UI tests can access both the accessibility label and the actual display content for verification purposes.
For ex:
Problem scenario - setting accessibilityLabel masks access to any displayed content
If an accessibilityLabel is set on a UI element, then it seems to be no-longer possible to check/access the displayed content of that element:
var body: some View {
Text("AAA")
.accessibilityIdentifier("textThing")
.accessibilityLabel("ZZZ") // Different label from the text which is displayed in UI
}
// in test...
func test_ThingExists() {
XCTAssert(app.staticTexts["AAA"].exists) // Fails, cannot find the element
XCTAssertEqual(app.staticTexts["ZZZ"].label, "AAA") // Fails - '.label' is the accessibilityLabel, not the displayed content
XCTAssertEqual(app.staticTexts["ZZZ"].label, "ZZZ") // Passes, but validates the accessibility content, not the displayed content
XCTAssert(app.staticTexts["textThing"].exists) // Passes, but does not check the displayed content
XCTAssertEqual(app.staticTexts["textThing"].label, "AAA") // Fails - '.label' is the accessibilityLabel, not the displayed content
XCTAssertEqual(app.staticTexts["textThing"].label, "ZZZ") // Passes, but validates the accessibility content, not the displayed content
}
element.label still only checks the accessibilityLabel. There is not, it seems, an way back to being able to check the content of the Text element directly.
Thank you for your attention and support. We look forward to your valuable insights.
Under macOS 26 and iPadOS, the Help menu in many cases has a menu item for "App Help". This item has the following icon:
I need to use this in my own app. I am unable to find this icon in SF Symbols 7 beta. I've scanned all of the icons under "What's New". I've searched for "help", "light", and "bulb" and this icon does not appear.
Does anyone know if it's even a new SF Symbol? Or does anyone know of a way to use this icon?
I have been working on a M1 Mac mini, using my iPad Air M2 running 26.3 iPadOS. Switched to a new M4 Mac mini, went to connect my iPad to run from Xcode and was presented this "The developer disk image could not be mounted on this device."
So how can a get an updated DDI?
I appreciate any ideas.
/Users/robertlawson/Desktop/Screenshot 2026-02-15 at 8.21.50 PM.png
Topic:
Developer Tools & Services
SubTopic:
General
Hello,
There seems to be a regression with macOS SDK 15 and dynamically loading libraries if Address Sanitizer is turned on. Seems to only affect Debug builds, and .frameworks. I've also reported this via the Feedback Assistant: FB16513866
Here's a minimal repro, if anyone is interested: https://gist.github.com/peter-esik/6b00432e411be85333e14ae7d953966e
I thought I'd post this here, as according to my web searches, this isn't a very well-known bug at this point.
Hello Apple community !
Not here to report an issue but I just wanted to make a suggestion ^^
I feel like a common frustration amongst developers is the lack of transparency over bugs filed on developer tools, SDKs, iOS versions, the whole Apple ecosystem really.
This leads to the creation of parallel bug tracking tools (https://github.com/feedback-assistant/reports?tab=readme-ov-file /
https://openradar.appspot.com/page/1) or filing of duplicates for reports that may already exist and are being worked on.
I feel like this would save time for both external developers that encounter bugs & Apple engineers that have to look for possible duplicates to share a common public database of issues.
Other companies have this kind of system in place (Google for example : https://issuetracker.google.com/) so why not Apple ?
Thank you
I can see that iOS beta 2 was released yesterday. I'm not running the beta yet on my actual iPhone, but I wanted to see if an issue I reported in beta 1 was fixed.
Is there a way to update my iOS 26 simulator for beta 2? Usually, there's a new Xcode download that includes the new simulator, but it looks like the most recent Xcode beta release was June 9.
I used to develop iPhone apps about a decade ago and am now back at it with an iPhone and companion Apple Watch app.
Why does it suck so bad? I a must be doing something wrong, but what I am doing is out of the box. The majority of the time when I go to build on the watch I get:
Previous preparation error: A connection to this device could not be established.; Timed out while attempting to establish tunnel using negotiated network parameters.
Which I then first try to force quit the app on the watch and if that does not work, reboot the watch (which is pretty ridiculous).
I tried Gemini and it gave me the following explanation:
This is arguably the single most frustrating error in the entire watchOS development ecosystem. As an expert, I can tell you that you are not doing anything wrong; you are fighting a fragile architecture.
Here is the technical breakdown of why this happens and a workflow to mitigate it without constant reboots.
The Technical "Why"
This error message reveals that the issue lies in the CoreDevice (and formerly usbmuxd) infrastructure, specifically in the secure transport layer.
The "Tunnel" Failure: Xcode attempts to establish a secure, encrypted tunnel (DTXConnection) to the Apple Watch to push the debugger and the app binary. Unlike the iPhone, which can sustain a high-bandwidth connection easily, the Watch aggressively manages its radios (Bluetooth vs. WiFi vs. AWDL) to save battery.
The "Handshake" Timeout: If the Watch is on Bluetooth (Low Energy) when Xcode initiates the tunnel, the bandwidth is insufficient. The system tries to escalate the connection to WiFi (or Apple Wireless Direct Link). If this negotiation takes even a few milliseconds too long—due to 2.4GHz interference, router mDNS configuration, or the Watch CPU being throttled—the handshake times out.
The "Previous Preparation Error": This is the insidious part. Once the handshake fails once, Xcode’s device service caches that failure state for the device UUID. It marks the device as "unreachable" to prevent the IDE from hanging indefinitely on subsequent tries.
Why you see it constantly: You aren't actually triggering a new connection attempt; you are hitting the cached "failed" state immediately.
Unfortunately, the solutions it gives me are:
The "Wired Proxy" Method (Most Reliable)
This is the gold standard for watchOS debugging. Do not rely on "Connect via Network" for the Watch directly if you can avoid it.
Disable WiFi on your Mac (temporarily) or ensure the Mac and iPhone are on the exact same SSID.
Plug your iPhone into the Mac via USB.
Ensure the Watch is paired to that iPhone.
Result: Xcode will tunnel the instructions through the USB connection to the Phone, and the Phone acts as a high-bandwidth proxy to the Watch. This eliminates the "Mac-to-Watch" WiFi negotiation failure point.
Do you hit this regularly? What do you do to make for a smooth development and deployment process? Or is it really this fragile?
Thanks for any help!
Bryan
Currently, if as a library author you are shipping dependencies as code, you can use the #if DEBUG preprocessor check to execute logic based on whether app is being built for Debug or Release.
My concern is more about the approach that should be taken when distributing frameworks/xcframeworks. One approach I am thinking of using is checking the presence of {CFBundleName}.debug.dylib in the main bundle. Is this approach reliable? Do you suggest any other approach?
Topic:
Developer Tools & Services
SubTopic:
General
Tags:
Swift Packages
Frameworks
Debugging
App Binary
Hi there
I've recently had my upload rejected in Xcode Organizer as a result of one of the frameworks we use containing
bitcode.
Error: [ContentDelivery.Uploader.XXXXXXXXXX] Validation failed (409) Invalid Executable. The executable 'Sam.app/Frameworks/Foo.framework/Foo' contains bitcode.
Is there an accurate way to determine whether an .xcframework contains bitcode ahead of time without using Xcode Organiser?
My current methodology is below, please can I get some confirmation that this is accurate, or suggest a more efficient approach?
I have concerns about my approach and whether it throws false positives for empty bitcode markers.
1. get original framework size
2. run xcrun bitcode_strip -r framework_path -o temp
3. get new framework size
4. if new size is smaller than original, then it contains bitcode
Thanks for the help,
Sam
Topic:
Developer Tools & Services
SubTopic:
General
Tags:
App Store Connect
Xcode
App Submission
Linker
I'm unable to sign in to Feedback Assistant on macOS. I have two Apple accounts and neither will sign in. I am able to sign in via the website. With the desktop app I'm getting a rather generic error message:
"Unable to sign in to Feedback Assistant
Thank you for your patience. Please try again later."
This started this morning.
Hello All,
I used to own an app named LOLIIPOP, and am in the process of transferring it to my new apple account.
I am having two problems....
How do I transfer the source code and binary to my new apple account?
My developers have an old code, so I need to send them the LAST code they uploaded to the App Store.
How do I do that as well???
Please any help!!!
Thanks,
Mr. LM
Topic:
Developer Tools & Services
SubTopic:
General
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 Apple Engineers and fellow developers,
I'm a student developer working on an educational focus management app that helps users hide distracting apps during study sessions. The app consists of:
macOS app: Simple "Hide apps" button that triggers app hidding sessions
iOS app: Uses Screen Time API to temporarily hide selected apps from home screen
Communication: Bonjour networking between Mac and iPhone for session coordination
The Challenge
My app requires two entitlements that aren't available with Personal Developer Teams:
com.apple.developer.family-controls (for Screen Time API)
com.apple.developer.networking.multicast (for Bonjour device discovery)
Current Error Messages
text
Cannot create a iOS App Development provisioning profile for "focuser.focuser-app".
Personal development teams, including "My Name", do not support the
Family Controls (Development) capability.
Provisioning profile doesn't include the com.apple.developer.family-controls
and com.apple.developer.networking.multicast entitlements.
My Question for Apple Engineers
Is there any legitimate way to test these privacy-sensitive APIs on my own devices for educational/learning purposes without purchasing the $99/year Apple Developer Program membership?
I understand the security reasons behind these restrictions, but as a student just learning iOS development, it creates a significant barrier to experimenting with these technologies.
Topic:
Developer Tools & Services
SubTopic:
General
Tags:
Entitlements
Network
Family Controls
Bonjour
I am trying to communicate with the backend of my project. So I need to install the certificate into the simulator. I have the .pem file but when I drag-dropped it into the simulator, I got
the error "Simulator device failed to complete the requested operation.". The simulator is an iPhone 16 Pro running iOS 18.5. Is there any way to install the cert to my simulator?
PS: I can't use Apple Configurator or MDM because I am using the office's Mac. And I can't install anything there. So I can only do it manually.
does anyone know where to find some slideshow/text/pdf versions of these?
https://developer.apple.com/tutorials/swiftui
maybe apple can use that fancy AI they are working on to generate those from the vides... to stress-test the AI :)
Topic:
Developer Tools & Services
SubTopic:
General
Hi, I want to build an ios app that uses static c libraries. For reference, i did the following as a test:
Compiled a simple c date and time program with
clang -c -arch arm64 -sysroot <iPhoneOSSDK_path> date.c -o date_arm64.o
Created the static lib
ar rcs libdatetime_arm64.a date_arm64.o
Added the lib in my Xcode project.
Added the (.a) file in Build Rules -> Link Binary With Libraries
Included the (.a) and (.h) file path in Build Settings -> Search Paths -> Header and Library Search Path
Created a Bridging-Header.h file where I added
#import "date.h"
In my App.swift file, I called the function for getting the date and time
let dateTimeStr = String(cString: get_current_datetime())
print("Current Date and Time: \(dateTimeStr)")
After doing all the steps above, I am met with the error - Cannot find 'get_current_datetime' in scope
Is there any other method to use static c libraries in xcode?
"UITests recording reports 'The capability "Create Service Socket" is not supported by this device.' on M1 chip, but works normally on Intel chip."