Developer Tools

RSS for tag

Ask questions about the tools you can use to build apps.

Posts under Developer Tools tag

200 Posts

Post

Replies

Boosts

Views

Activity

List of all XCode project parameters or build settings. Where to find?
Hello all! Trying to find list of all XCode project parameters or build settings within description. Is there any documentation? Need something that will help me to understand list of project properties when running command in project folder: $ xcodebuild -showBuildSettings Command line invocation: /Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild -showBuildSettings User defaults from command line: IDEPackageSupportUseBuiltinSCM = YES Build settings for action build and target test: ACTION = build AD_HOC_CODE_SIGNING_ALLOWED = NO AGGREGATE_TRACKED_DOMAINS = YES ALLOW_BUILD_REQUEST_OVERRIDES = NO ALLOW_TARGET_PLATFORM_SPECIALIZATION = NO ALTERNATE_GROUP = staff ALTERNATE_MODE = u+w,go-w,a+rX ALTERNATE_OWNER = alexandr ALTERNATIVE_DISTRIBUTION_WEB = NO ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO ALWAYS_SEARCH_USER_PATHS = NO ALWAYS_USE_SEPARATE_HEADERMAPS = NO and may other parameters Need to know meaning of this kind of parameters.
1
0
125
Sep ’25
Automatic Code Signing Error
I am trying to update an old UIKit/CoreData app and am (among other changes) adding CloudKit synchronization support. I enabled CloudKit (ie, set up a new CloudKit domain, enabled CloudKit, Background Mode Remote Notifications, and Push Notifications. When I did this, automatic code signing failed. (see attached for the messages). I tried creating and downloading a new provisioning profile, but that did not help. FB19742743 Can someone help me? I have absolutely no idea of what to do next to get this app signed (and hopefully back into the AppStore soon).
2
0
184
Aug ’25
How to install newer beta 26 SDKs into older Xcode 26 Betas?
Hello, It seems Xcode 26 beta is lagging the OS releases, which is fine. However, how does one install a Beta N + 1 or N + 2 SDK into the older Xcode beta? I'd like to use iOS 26 Beta 8 from the Xcode 26 Beta 6 install I have. I have tried Settings/Components and Devices & Simulators but nothing Beta 7 nor 8 shows up there. Thanks! -- Greg Bolsinga
2
0
174
Aug ’25
Having an issues viewing application on testflight after successfully sending it to app store connect with eas
Hello, Im having an issue seeing my application appear in in testflight. as soon as i run the command eas submit - p ios --latest it completes and says Your binary has been successfully uploaded to App Store Connect! It is now being processed by Apple - you will receive an email when the processing finishes. It usually takes about 5-10 minutes depending on how busy Apple servers are. When it's done, you can see your build here: the app sometimes flashes on the screen in testflight then is gone forever This is an expo react native application.... I was able to submit builds but all of a sudden this started occuring.
0
0
101
Aug ’25
App rejected by App Store Connect with ITMS-90714: Invalid binary
Hi, I am on Mac OS Sequoia 15.5, XCode 16.4 (16F6) Uploading via XCode or Transporter is successful, then binary gets refused by App Store Connect. I have tried: Removing all Other Linker Flags except -ld64 as the app cannot be generated without ld64. My original Other Linker Flags: -all_load -w -Xlinker -no_objc_category_merging -ld64 2. Running xcrun dyld_info -objc Payload/YourApp.app/YourApp | grep "(null)" return nothing. Please, advise what else can I do.
2
0
131
Aug ’25
SwiftSupport is missing
I'm trying to distribute an app for internal testing but I'm always getting the below error and the SwiftSupport folder is not created although I tried different fixes/configurations. How can I debug/see the reason why the SwiftSupport folder is not generated? Xcode 16.4 Build version 16F6 I tried distributing from the Transporter, Xcode organizer, I tried to archive it both from Xcode and from the command line. There are a couple of answers on StackOverflow, nothing helped. What could be the problem? One of the things I tried: xcodebuild \ -project PhotoBook.xcodeproj \ -scheme PhotoBook \ -configuration Release \ -archivePath Release/PhotoBook.xcarchive \ -destination 'generic/platform=iOS' \ -verbose \ archive xcodebuild \ -exportArchive \ -archivePath Release/PhotoBook.xcarchive \ -exportPath Release \ -exportOptionsPlist ExportOptions.plist \ -destination 'generic/platform=iOS' \ -verbose ExportOptions.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>method</key> <string>app-store-connect</string> <key>teamID</key> <string>T672CQXP54</string> <key>uploadSymbols</key> <true/> <key>uploadBitcode</key> <false/> <key>signingStyle</key> <string>manual</string> <key>provisioningProfiles</key> <dict> <key>com.mandelbrotsc.PhotoBook</key> <string>iOS Distribution Profile</string> </dict> </dict> </plist> The error: ITMS-90426: Invalid Swift Support - The SwiftSupport folder is missing. Rebuild your app using the current public (GM) version of Xcode and resubmit it.
0
0
36
Aug ’25
App crashes on start in TestFlight
Hi, I have a .NET MAUI app running on .NET 9. When I test locally in debug or release mode it works perfectly fine, but when testing from TestFlight it crashes almost immediately every time. I have sent the crash report to TestFlight and produced the symbolicated.crash file (attached), but I'm not sure it's helpful for understanding how to fix the issue. If anyone can help me understand what the issue might be and any possible fixes it'd be very much appreciated. I'm developing using Visual Studio 2022 paired to my Mac. I have distributed previously without issue, but now can't seem to, even after reverting recent code. net9.0-ios 15.0 symbolicated.crash
1
0
134
Aug ’25
Icon Composer warning "Failed to parse icontool JSON output."
When the Icon Composer file is imported into the project folder, and after building, there is a warning that says: Failed to parse icontool JSON output. Parts of the warnings show this: Entity: line 1: parser error : Start tag expected, '<' not found \211PNG ^ Entity: line 1: parser error : Start tag expected, '<' not found \211PNG ^ Entity: line 1: parser error : Start tag expected, '<' not found \211PNG ^ /* com.apple.actool.notices */ warning: Failed to parse icontool JSON output. Underlying Errors: Description: The data couldn’t be read because it isn’t in the correct format. Failure Reason: The data is not in the correct format. Debug Description: Garbage at end around line 6, column 0. /* com.apple.actool.compilation-results */ I have created the icon with png files in each layer group in icon composer. However the project is able to compile, and running shows the correct icon. What is the issue with this?
4
6
171
Aug ’25
CarPlay CPGridTemplate – buttons show in a row, and limited to 9 buttons
Hi, I’m working with CPGridTemplate in CarPlay. According to the documentation, it supports up to 9 CPGridButton objects and should display them in a grid (up to 3×3). However, I’ve run into two issues: Row instead of grid When I add 4–6 buttons, they don’t appear in a 2×2 or 2×3 grid. Instead, they are shown in a single horizontal row. Even 9 buttons do not appear in a 3x3 grid. More than 9 buttons My use case requires more than 9 icons, but it looks like CPGridTemplate ignores any additional buttons beyond the first 9. Is there any supported way to display more than 9 buttons in a grid, or is pagination/multiple templates the only option? Thanks in advance!
1
0
87
Aug ’25
新しいWebViewにおいてが動作しない
現在新しいWebViewを使ってwebページを読み込むiPadプログラムを作成中ですが、読み込んだ後に部分のボタンをタップしても何も起こりません。safariで通常通りページを開いてボタンをタップするときちんと写真ライブラリ・カメラで撮るなどのポップアップが表示されます。下記がコードです。Webページは単純化のためにのみを配置しています。 struct SwiftUIWebView: View { @State private var webPage = WebPage() private let url = URL(string: "https://www.****.com/")! var body: some View { WebView(webPage) .onAppear { // URLを読み込む webPage.load(URLRequest(url: url)) } } } 何か追加のコードが必要なのでしょうか?
0
0
182
Aug ’25
How to use a folder generated by an Xcode Aggregate Target as a resource in another target?
I have a multi target project where every target relies on a built "web bundle" which is basically a collection of html, optimized images, and optimized javascript. Right now that web bundle is built in a pre build step by running a script. The script takes awhile to run and outputs to a folder that is referenced into the project via a PBXFileReference which is then referenced in the Copy Bundle Resources step. 96516AC22BF928DD00576562 /* build */ = {isa = PBXFileReference; lastKnownFileType = folder; name = build; path = "../web-ui/build"; sourceTree = "<group>"; } .... 96516AC32BF928DD00576562 /* build in Resources */ = {isa = PBXBuildFile; fileRef = 96516AC22BF928DD00576562 /* build */; }; As a step, I wrote an aggregate target that can also run this script. I specified its input and output files and turned off sandboxing. It does exactly what I need it to. Critically it is ran based on dependency analysis. If I modify any file in web-ui it rebuilds, if I dont I can repeatedly build the aggregate target and it will not re-run the script. This is perfect. A97590172E419CBA00741928 /* Build Web Bundle */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 12; files = ( ); inputFileListPaths = ( ); inputPaths = ( "$(SRCROOT)/xcodescripts/build-web-bundle.bash", "$(SRCROOT)/web-ui/index.html", "$(SRCROOT)/web-ui/vite-env.d.ts", "$(SRCROOT)/web-ui/vite.config.ts", "$(SRCROOT)/web-ui/tsconfig.json", "$(SRCROOT)/web-ui/stats.html", "$(SRCROOT)/web-ui/postcss.config.js", "$(SRCROOT)/web-ui/package.json", "$(SRCROOT)/web-ui/justfile", "$(SRCROOT)/web-ui/src/", ); name = "Build Web Bundle"; outputFileListPaths = ( ); outputPaths = ( "$(SRCROOT)/web-ui/build/", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; shellScript = "exec \"${SCRIPT_INPUT_FILE_0}\"\n"; }; You may notice I reference a src file. This is made possible via a flag USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES which allows Xcode to check folder dependencies recursively. The problem is that my other targets do not automatically recognize that they need to run the "WebBundle" aggregate target in order to update a resource they copy in their "Copy bundle resources" phase. So I tried adding it as a Target Dependency. A9DE685B2E41C9A8005EF4E0 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = A97590132E419C1200741928 /* WebBundle */; targetProxy = A9DE685A2E41C9A8005EF4E0 /* PBXContainerItemProxy */; }; Unfortunately this breaks whatever magic was allowing the script to be run only when there are web bundle changes. Every build it runs the "Build Web Bundle" script. I think what I am missing is a way to specify in these other targets that a resource they are used to copying from the Xcode PBXFileReference is produced by the aggregate target. This way they can start to reason about the dependencies. Other possibilities are that I should be building the web bundle to a separate location. Or that these references are somehow broken in another way. To be clear the folder format is as thus project/ iOS/ client.xcodeproj web-ui/ build/ (web bundle build is output here and referenced relatively) src/ index.html (and other things)
5
0
105
Aug ’25
xcodebuild keeps defaulting to Mac Catalyst
Ok, I'm going crazy here. I have a static library for iOS that I want to build for the simulator. I use xcodebuild -destination="iOS Simulator" and then check the library using otool which tells me the platform is 6, which is Mac Catalyst. When I look at the output of xcodebuild, it says --- xcodebuild: WARNING: Using the first of multiple matching destinations: { platform:macOS, arch:arm64, variant:Mac Catalyst, id:00006041-0008492E3AA1801C, name:My Mac } ... It has the simulator listed too, way down the list: { platform:iOS Simulator, arch:x86_64, id:AB7A99B3-8D24-4F73-A42D-9BB45321928D, OS:18.6, name:iPad (A16) } When I put all of that into xcodebuild for the platform, it still says there are multiple matching destinations and chooses Mac Catalyst. Why? How? What? Does platform="iOS Simulator" mean nothing? How in the world does "Mac Catalyst" match "iOS Simulator"????? I don't want Mac Catalyst, I don't need Mac Catalyst, and I can't get rid of Mac Catalyst. Nothing I specify in xcodebuild results in anything I can build that will compile for the simulator. What the heck am I doing wrong?
5
0
82
Aug ’25
Why does dependency analysis work for a script that outputs a folder that is copied in copy bundle resources but not once that script is moved to an aggregate target?
This question is a component of this question and an extension to this question which has been solved. This situation might feel a pinch constructed but it is a simplified version of one step of the original question. Basically in my app I have a script that outputs a folder with a few files inside of it. This folder is output to $(BUILT_PRODUCTS_DIR)/build/ and is referenced via a PBXBuildFile. Because I put a wait in the script (to simulate a long build I have in my real project) it is very obvious when the script is or isn't run. The goal would be for it to run only when its dependencies have changed. The trick is if I put this script as a "run script" phase within my final target dependency analysis works great. The script only runs when the dependencies are updated. However if I put the "run script" phase into an aggregate target then add it as a Target Dependency in the main target Xcode wants to run the script every time. Regardless of if the dependencies have changed. However if you build just the aggregate target alone everything goes just fine. It only builds when it has to. To me this does not quite make sense. I thought that dependency analysis of the script within my aggregate target would be the same regardless of whether that script was within the aggregate target or the main target. In my app I ideally need the aggregate target to be shared by multiple other targets. While I could put the script in each it would be more foolproof to have them share an aggregate target. Why would dependency analysis come to a different conclusion when the script is within an aggregate target that is a target dependency of the main target? If it helps here is the script and the entire project can be found here on GitHub if you would like to play with it. mkdir -p "${SCRIPT_OUTPUT_FILE_0}/build/" echo "Pausing for 10 seconds before creating files..." sleep 10 cat "${SCRIPT_INPUT_FILE_0}" cat > "${SCRIPT_OUTPUT_FILE_0}/build/index.html" << EOF <!DOCTYPE html> <html> <head> <title>Simple Page</title> </head> <body> <h1>Welcome to Simple Page</h1> <p>Generated at: $(date)</p> </body> </html> EOF cat > "${SCRIPT_OUTPUT_FILE_0}/build/page.html" << 'EOF' <!DOCTYPE html> <html> <head> <title>Simple Page</title> </head> <body> </body> </html> EOF
0
0
53
Aug ’25
Request for Device Temperature Monitoring and Thermal Attribution Analysis APIs
Background: During daily usage of iOS devices, devices experience noticeable thermal issues. This heating not only affects user experience, but may also lead to device performance throttling, shortened battery life, and other problems. We need better understanding and monitoring of device thermal states to optimize application performance and user experience. Issues Encountered: Insufficient thermal monitoring capabilities: Unable to obtain real-time accurate temperature data from devices Difficult power consumption analysis: Hard to determine which specific modules or threads cause high power consumption and heating Requested Solutions: Temperature Monitoring API: Provide accessible device temperature reading interfaces Thermal Attribution Analysis Capability: During heating events, we expect to receive more detailed power consumption monitoring data, such as CPU, GPU, network, location services, display, high power consumption thread stacks and other information to help developers identify high energy consumption operations
2
0
60
Aug ’25
Force "Update Now" Alert Without Modifying Frontend
I have the following technical scenario: I need to implement the “Update Now” alert flow that forces the user to download the latest version from the App Store before continuing to use the application. Conditions and limitations: I have no access to the frontend code, I can only make changes in the backend. The current version of the app was not designed to receive or process a signal from the backend indicating that the update alert should be displayed. The current frontend is connected to a different backend(PHP) than the one that will be used for the new app version, so it is not possible to implement this logic on the client side for older versions. Goal: To find out if there is any method, configuration, or API (for example, in App Store Connect or through some distribution mechanism) that allows forcing the mandatory update alert without modifying the current binary or frontend, only through backend responses or settings. Has anyone implemented this type of control, or does Apple provide any tool to achieve this? Thanks.
0
0
50
Aug ’25
Xcode folder reference to an aggregate target's output folder breaks between Debug/Release builds. BUILT_PRODUCTS_DIR not relative to the aggregate
In my project I have an aggregate target that runs a script that generates a "web bundle" in a folder build/ with all the html/css/resources needed for the website. These resources are generated via a script. I use these resources in multiple targets so I have created an aggregate target to make this simple. However, I have not found this simple. If I have the aggregate target output to $(DERIVED_FILE_DIR)/ then it outputs to a path that looks like this DerivedData/BrowserApp-bla/Build/Intermediates.noindex/BrowserApp.build/Debug-iphonesimulator/WebBundle.build/DerivedSources/build/index.html If I then drag that folder into Xcode and create a folder that references it. Then take that reference and make it relative to build products I get this A9DE6A502E41E397005EF4E0 /* build */ = { isa = PBXFileSystemSynchronizedRootGroup; name = build; path = "../../Intermediates.noindex/BrowserApp.build/Debug-iphonesimulator/WebBundle.build/DerivedSources/build"; sourceTree = BUILT_PRODUCTS_DIR; }; This is because to the main BrowserApp target the BUILT_PRODUCTS_DIR is DerivedData/BrowserApp-bla/Build/Products/Debug-iphonesimulator. You can see that the reference essentially has to maneuver out of the built products folder for the main BrowserApp target and into the built products directory for WebBundle. This is ok for a debug build I suppose you can imagine that this is going to break down the moment you have a release build. Now if we ignore that problem then comes the problem of getting it in Copy Bundle Resources. Xcode 16s PBXFileSystemSynchronizedRootGroup is a great improvement but does not help here. The only way I have found to get the folder copied is to hop into an earlier Xcode or make the following modifications. Change the PBXFileSystemSynchronizedRootGroup into a PBXBuildFile (In PBXFileReference section) A9DE6A502E41E397005EF4E0 /* ../../Intermediates.noindex/client.build/Debug/WebBundle.build/DerivedSources/build */ = {isa = PBXFileReference; lastKnownFileType = text; path = ../../Intermediates.noindex/BrowserApp.build/Debug-iphonesimulator/WebBundle.build/DerivedSources/build; sourceTree = BUILT_PRODUCTS_DIR; }; (In the mainGroup PBXGroupSection) A9DE6A502E41E397005EF4E0 /* ../../Intermediates.noindex/client.build/Debug/WebBundle.build/DerivedSources/build */, Then remove any references for A9DE6A502E41E397005EF4E0 as a synchronized group Create a PBXBuildFile using the previous PBXBuildFile as its fileRef then add it to the copy resources stage (In PBXBuildFile section) 96516AC32BF928DD00576562 /* ../../Intermediates.noindex/BrowserApp.build/Debug-iphonesimulator/WebBundle.build/DerivedSources/build in Resources */ = {isa = PBXBuildFile; fileRef = A9DE6A502E41E397005EF4E0 /* ../../Intermediates.noindex/BrowserApp.build/Debug-iphonesimulator/WebBundle.build/DerivedSources/build */; }; (In the PBXBuildResources phase for the resources section of the main target) 96516AC32BF928DD00576562 /* ../../Intermediates.noindex/BrowserApp.build/Debug-iphonesimulator/WebBundle.build/ I do not know of a way to do this with a PBXFileSystemSynchronizedRootGroup so these manual changes seem necessary. After these changes I have the following: And you can confirm the entire folder is accessible to the app. However if you try to build for release/Archive you get lstat(/Users/calebkierum/Library/Developer/Xcode/DerivedData/BrowserApp-bla/Build/Intermediates.noindex/ArchiveIntermediates/BrowserApp/Intermediates.noindex/BrowserApp.build/Debug-iphonesimulator/WebBundle.build/DerivedSources/build): No such file or directory (2) Which makes sense. The file reference has a relative path that explicitly mentions "debug" however because this path is based on an aggregate target I am not sure how you really update this reference for release.
3
0
83
Aug ’25