Dive into the vast array of tools and services available to developers.

Posts under General subtopic

Post

Replies

Boosts

Views

Activity

Will Icon Composer support development of tvOS and visionOS icons?
In the beta of Icon Composer, I see macOS, iOS, and watchOS icons, but there is nothing about visionOS and tvOS. Those icons are particularly hard and it would be great if this app worked for developing icons for all Apple platforms. I tried asking this in a WWDC group lab, but they didn't get to it and suggested posting to the forum.
2
1
147
Oct ’25
Check whether app is built in debug or release mode
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?
7
0
317
3w
Linker nondeterminism (ld_new) involving branch islands
Hi, I'm investigating what looks like possibly nondeterministic behavior when linking large iOS app binaries. I do not have a concise reproduction of the issue yet, but am trying to hunt down possible leads. In particular, the problem appears to surface when invoking clang to link a binary and the resulting order of the 'branch island' instructions appears to be random each time the binary is linked (as shown by the link map output). I was wondering if anyone with insight into the linker's current implementation could shed light on whether that is expected, and if there is anything that can be done to prevent it. FWIW, it seems like it might be size-dependent as smaller app binaries don't appear to exhibit the same behavior. I'd be glad to share more specifics and hopefully a reproduction if I can ever find one eventually. Some environment info (Xcode 16.4 toolchain): clang -v: Apple clang version 17.0.0 (clang-1700.0.13.5) Target: arm64-apple-darwin24.6.0 Thread model: posix InstalledDir: /Applications/Xcode-16.4.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin ld -v: @(#)PROGRAM:ld PROJECT:ld-1167.5 BUILD 01:45:05 Apr 30 2025 configured to support archs: armv6 armv7 armv7s arm64 arm64e arm64_32 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em will use ld-classic for: armv6 armv7 armv7s i386 armv6m armv7k armv7m armv7em LTO support using: LLVM version 17.0.0 (static support for 29, runtime is 29) TAPI support using: Apple TAPI version 17.0.0 (tapi-1700.0.3.5)
2
0
418
Oct ’25
lldb: argument starting with hash disappears.
Here's a simple C++ program that echoes its arguments... #include <stdio.h> int main(int argc, char* argv[]) { for (int i=0; i<argc; ++i) printf("%d %s\n", i, argv[i]); } This works as expected... > ./test arg1 #arg2 arg3 0 ./test 1 arg1 2 #arg2 3 arg3 Running under lldb gives this... > lldb ./test arg1 #arg2 arg3 (lldb) target create "./test" Current executable set to '/Users/richard/Work/test' (arm64). (lldb) settings set -- target.run-args "arg1" "#arg2" "arg3" (lldb) run Process 6138 launched: '/Users/richard/Work/test' (arm64) 0 /Users/richard/Work/test 1 arg1 Process 6138 exited with status = 0 (0x00000000) I get the same if I quote the arguments, or if I add them to the run line. Stepping into main() we see the argv and args values are as though we only had the first argument. If I quote the second argument and add an initial space " #arg1" then it works. I first saw this on an M1 running Sequoia 13.1. It am now on OS 13.3. lldb --version lldb-1600.0.39.109 Apple Swift version 6.0.3 (swiftlang-6.0.3.1.10 clang-1600.0.30.1)
2
1
401
Feb ’25
Testing Family Controls & Multicast Networking APIs - Educational Use Without Paid Developer Account?
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.
1
0
151
Oct ’25
Multiple commands produce React-Core_privacy and RCT-Folly_privacy.bundle.
Multiple commands produce '/Users/pradipta/Library/Developer/Xcode/DerivedData/Pinkpaws-fqxvzkonyxofupcsmbloesfvzllq/Build/Intermediates.noindex/ArchiveIntermediates/Pinkpaws/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/React-Core_privacy.bundle' Target 'React-Core-60309c9c-React-Core_privacy' (project 'Pods') has create directory command with output '/Users/pradipta/Library/Developer/Xcode/DerivedData/Pinkpaws-fqxvzkonyxofupcsmbloesfvzllq/Build/Intermediates.noindex/ArchiveIntermediates/Pinkpaws/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/React-Core_privacy.bundle' Target 'React-Core-React-Core_privacy' (project 'Pods') has create directory command with output '/Users/pradipta/Library/Developer/Xcode/DerivedData/Pinkpaws-fqxvzkonyxofupcsmbloesfvzllq/Build/Intermediates.noindex/ArchiveIntermediates/Pinkpaws/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/React-Core_privacy.bundle' Multiple commands produce '/Users/pradipta/Library/Developer/Xcode/DerivedData/Pinkpaws-fqxvzkonyxofupcsmbloesfvzllq/Build/Intermediates.noindex/ArchiveIntermediates/Pinkpaws/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/RCT-Folly_privacy.bundle' Target 'RCT-Folly-RCT-Folly_privacy' (project 'Pods') has create directory command with output '/Users/pradipta/Library/Developer/Xcode/DerivedData/Pinkpaws-fqxvzkonyxofupcsmbloesfvzllq/Build/Intermediates.noindex/ArchiveIntermediates/Pinkpaws/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/RCT-Folly_privacy.bundle' Target 'RCT-Folly.default-Fabric-RCT-Folly_privacy' (project 'Pods') has create directory command with output '/Users/pradipta/Library/Developer/Xcode/DerivedData/Pinkpaws-fqxvzkonyxofupcsmbloesfvzllq/Build/Intermediates.noindex/ArchiveIntermediates/Pinkpaws/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/RCT-Folly_privacy.bundle' I am using react native 0.77.0 and xcode 16.2. The build succeeded but while archiving I am getting this.
1
1
503
Feb ’25
UI Test Cases Failing with Custom Accessibility Labels in SwiftUI
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.
1
1
150
Mar ’25
iOS 26 Download Link is Broken
I'm trying to download the iOS 26 restore image for my iPhone 14 Pro Max, which is my test device. However, when I attempted to install it directly via the over-the-air (OTA) update, the iPhone rebooted to the iOS 26 "Welcome" screen, but with no touch functionality—the screen was completely unresponsive. I restored the device back to iOS 18.5 and tried the OTA update again, but once more, the touch screen stopped working upon completion. Now, I am trying to download the iOS 26 restore image from the official developer page (https://developer.apple.com/download/#ios-restore-images-ipad-new) to install it manually using my Mac. However, I've run into a problem with the download links: The link for the iPhone 14 Pro Max (iOS 26) restore image actually downloads the iPhone 14 Pro (iOS 18.5) image. Conversely, the link for the iPhone 14 Pro seems to provide the correct iPhone 14 Pro Max (iOS 26) image. The issue is that when I try to restore my iPhone using this seemingly correct file, I receive an error that the firmware file is not valid or compatible. I suspect it's not being properly signed by Apple for my device during the restore process. Does anyone have the correct, official download link for the iOS 26 restore image for the iPhone 14 Pro Max? How can I fix these errors?
5
1
279
Jun ’25
Assertion failed: (reconstituted == accumulator), function setFixup64, file OutputFile.cpp, line 2975
Xcode 16.2 Flutter version 3.27.1 0 0x1008abee4 __assert_rtn + 160 1 0x1008add9c ld::tool::OutputFile::setFixup64(unsigned char*, unsigned long long, ld::Atom const*) (.cold.3) + 0 2 0x100789640 ld::tool::OutputFile::setFixup64(unsigned char*, unsigned long long, ld::Atom const*) + 656 3 0x100785b78 ld::tool::OutputFile::applyFixUps(ld::Internal&amp;, unsigned long long, ld::Atom const*, unsigned char*) + 4388 4 0x10078be18 ___ZN2ld4tool10OutputFile10writeAtomsERNS_8InternalEPh_block_invoke + 488 5 0x19bc19428 _dispatch_client_callout2 + 20 6 0x19bc2d850 _dispatch_apply_invoke3 + 336 7 0x19bc193e8 _dispatch_client_callout + 20 8 0x19bc1ac68 _dispatch_once_callout + 32 9 0x19bc2c8a4 _dispatch_apply_invoke + 252 10 0x19bc193e8 _dispatch_client_callout + 20 11 0x19bc2b080 _dispatch_root_queue_drain + 864 12 0x19bc2b6b8 _dispatch_worker_thread2 + 156 13 0x19bdc5fd0 _pthread_wqthread + 228 A linker snapshot was created at: /tmp/Test Kopi Kenangan.debug.dylib-2025-02-27-100512.ld-snapshot ld: Assertion failed: (reconstituted == accumulator), function setFixup64, file OutputFile.cpp, line 2975. clang: error: linker command failed with exit code 1 (use -v to see invocation)
5
1
607
Sep ’25
Can't install iOS 26.0 beta through xcodes or xcodebuild
I need to automate updating to latest iOS betas as part of my ci script, but I can't get it to install iOS 26.0 beta for the life of me, using xcodes or xcodebuild. I can see the version listed using xcodes runtimes --include-betas, and I tried sudo xcodes runtimes install "iOS 26.0-beta1", but I would get the error Downloading Runtime iOS 26.0-beta1: 0% Error: ProcessExecutionError()\ I also tried xcodebuild -downloadPlatform iOS -buildVersion 23A5260l, where I found the specific build id on apples dev images website. But I would get the error iOS 23A5260l is not available for download. Specific version download failed, trying downloadPlatform ios latest... And similar error for trying xcodebuild -downloadPlatform iOS -buildVersion 26.0 or other version ids I found online. But this command would work for any other versions and betas listed on the website. I was able to install iOS 26.0 through xcodebuild -downloadPlatform iOS, which automatically installed it for me, but this is unideal for my situation, as I want to control which betas to install instead of just the latest one (like iOS 18.6 beta that just came out). Is anyone else also struggling with these errors? xcodes version 1.6.2 Xcode version 26.0 Beta (installed and selected through xcode)
4
1
272
Sep ’25
Controlling UIDesignRequiresCompatibility via Remote Config
Hello, I am currently in the process of gradually adding support for LiquidGlass to my app. The transition is taking place incrementally, i.e., new screens and minor features are gradually being adapted to the new design and already deployed. Currently, the old design is still active via the feature flag UIDesignRequiresCompatibility, as the existing UI should remain locked for the public app store version until the transition is complete. My challenge is as follows: I would like to work with the new LiquidGlass design during development without having to manually change the UIDesignRequiresCompatibility flag with each deployment. Ideally, I am looking for a solution where: • the new design is only activated for me (e.g., specific account or specific devices) • the old design remains active for all other users • the App Store version can be delivered unchanged So my question is: Is it possible to control UIDesignRequiresCompatibility via remote config or server-side logic in order to activate the new design specifically for certain users or devices? I have observed similar behavior on WhatsApp—two devices with the same app version, but only one shows the new design. This suggests server-side or remote config-based control. Do you have any experience or recommendations on how to implement something like this cleanly? Kind regards Heinz
1
0
54
2w
DesktopServicesHelper appears to delete or unlink the source file before the ESF auth event deadline is reached, rather than waiting for the full deadline window.
On macOS Tahoe, our application using the Endpoint Security Framework (ESF) observes that during file copies through finder application, DesktopServicesHelper unlinks the source file if the ESF authorization response is delayed for ~5 seconds, even though the authorization event deadline remains 15 seconds, indicating that the process does not wait for the full ESF deadline before deleting the file. Before Tahoe, we didnt see this behaviour.
0
1
65
1w
Is Apple reading reports in the new Feedback Assistant?
Dear Apple,I'm an iOS developer and provided feedback in the good old online bug tracker for many years.Decent conversations with Apple egnineers often resulted in bug fixes or updated documentation.The fact that my contributions helped to improve the products was rewarding.So I kept adding reports in the new Feedback Assistant app in macOS Catalina.But ever since (September 2019) I never ever got any response on any ticket.1 month ago I even added a report if Apple even read my reports. Again, no response ever since.So my question on this forum: Is Apple actually reading reports in the new Feedback Assistant?This can either be answered by Apple, or by other Developers that hopefully did response feedback from Apple. Or did not.Best regards,Martijn
10
2
3.8k
May ’25
New Sequoia warnings on Terminal
After upgrading to the latest Sequoia on Intel, I am getting warnings like: 2025-02-07 19:01:13.576 Emacs-x86_64-10_14[3780:303891] +[IMKClient subclass]: chose IMKClient_Modern 2025-02-07 19:01:13.576 Emacs-x86_64-10_14[3780:303891] +[IMKInputSession subclass]: chose IMKInputSession_Modern on my own programs as well as others like Emacs. Is there a way to silence these warnings? They seem to be a bug in this macOS release.
3
1
722
Feb ’25
Add static c library to xcode/swift
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?
1
1
342
Mar ’25