Build, test, and submit your app using Xcode, Apple's integrated development environment.

Xcode Documentation

Posts under Xcode subtopic

Post

Replies

Boosts

Views

Activity

{Project}-LinkMap-normal-arm64.txt changed?
I upgraded xcode to 16.2 and found that the txt file generated by Write Link Map File is different from before, no longer containing detailed data. So, how to set it up to obtain the same link map file as the previous xcode version. # Path: /Users/....../xxx.app/__preview.dylib # Arch: arm64 # Object files: [ 0] linker synthesized # Sections: # Address Size Segment Section 0x00004000 0x00000000 __TEXT __text # Symbols: # Address Size File Name
0
0
94
Mar ’25
Linking arm64 static library for iPhoneSimulator
I work on an iOS app, written in Objective-C and C++, that uses a static library. I build this library using a Run Script in Build Phases in Xcode. This is a fat library, containing arm64 code built for iPhoneOS, and x86_64 code built for iPhoneSimulator. I'm trying to figure out how to create an arm64 iPhoneSimulator build of my app, and I'm running into a problem. If I simply enable arm64 debug builds, I get an error message saying "building for iOS Simulator, but linking in object file built for iOS", indicating that the arm64 iPhoneOS code in the library is not compatible with an arm64 iPhoneSimulator target. Now, I can build the library as arm64 for iPhoneSimulator, but that means I'll have to build a separate library for the simulator build, since lipo won't combine arm64 iPhoneOS and arm64 iPhoneSimulator builds in one file. My question: how can I get Xcode to link with a different library for iPhoneSimulator builds than for iPhoneOS builds? All I can come up with is to use completely separate targets for debugging in the simulator vs. debugging on a real device, but that seems ugly. (It would be even better if I could use the same library for both arm64 iPhoneSimulator and iPhoneOS builds. The library in question is a math library which makes no system calls, so I think the same code should be usable for both builds, if only I could get the linker to allow that.)
2
0
155
Mar ’25
Xcode has high CPU usage when apparently doing nothing for hours
In 2020 I created FB7719215, which I updated several times (including just now) and in 2021 I created FB9204092, but the issue is still there: when I keep Xcode open (currently version 16.3), my battery drains much quicker, even when it's apparently idle. For instance, today I barely did anything in Xcode, but still it has been at a constant 90% CPU for the last hours, and I keep checking the battery percentage to check how much time I have left. Does anyone at Apple has an explanation, workaround and/or fix?
2
0
150
Jun ’25
app not playing audio when not in focus
My app works fine when I load it directly from Xcode to my phone via USB but once I load it to TestFlight the sounds no longer play when the app is not in focus or the phone is locked. I've tried every combination of tools available from the support group and from AI! And I'm out of ideas.
1
0
74
May ’25
Copy Symbol Name and Copy Qualified Symbol Name missing in Xcode 16.3 context menu?
As of Xcode 16.3 it seems Copy Symbol Name and Copy Qualified Symbol Name have been removed from the context menu. I see they're still under Edit > Copy in the Menu Bar, but this location seems far less accessible. Is there a setting to return them to the context menu? I use these on a daily basis, and I find this change to be frustrating.
1
0
118
Apr ’25
xcode 16.3 now not selecting correct Signing Certificate with Automatically Manage Signing Selected
HI, I upgraded to macos 15.5 and xcode 16.3. Last year I was able to update one of my apps on the App Store without issues. Today, after a successful Testflight test, I now need to submit a new version of my app to the App Store for Distribution as the next version/build. However, when I configure a manual setting for the signing, I can select the correct choices. But when I click automatically manage signing, and choose the correct team, xcode put in the wrong signing certificate. It is choose a development one, and not the distribution one. I am concerned about this since I have read that when using the Archive tool, it choses the automatically manage signing by default. And that check box is selecting the "default" settings. I do not know where these default settings are being set, or how to fix this issue. I do not see any info in my searching up to this point. I hope someone can help. thank you, cc
0
0
108
May ’25
Distribution and Apple TV Question
Hi, This maybe somewhat confusing, but please bear with me. I currently have an app in the App Store that supports iOS and tvOS. But the tvOS version was a separate app during the development process. I'd like to combine the iOS and tvOS app into one project so its easier to handle and keep track of internally. Can I upload the new Apple TV version to the same place where the current one is, or would I have to delete the current Apple TV version before uploading the newly combined version? I hope I made that clear enough :-) Thank you, Dan Uff
0
0
107
Apr ’25
APNS NULL
this is our code foe fetching the apnstoken - and registering for the FCM and snding it to our servers. - we are consistently getting apns == null import 'dart:io'; import 'package:firebase_messaging/firebase_messaging.dart'; import 'package:firebase_auth/firebase_auth.dart'; import 'package:cloud_firestore/cloud_firestore.dart'; import 'package:firebase_messaging/firebase_messaging.dart'; import 'package:solaris/services/fetch_deviceId.dart'; Future initializeFCM() async { final FirebaseMessaging _firebaseMessaging = FirebaseMessaging.instance; // Request notification permissions for iOS final settings = await _firebaseMessaging.requestPermission(); print('Notifcation Permission Status: ${settings.authorizationStatus}'); String? apnsToken; int retries = 0; const int maxRetries = 60; const Duration retryDelay = Duration(seconds: 2); // Retry fetching the APNs token until it's available or max retries are reached while (apnsToken == null && retries < maxRetries) { print(retries); apnsToken = await _firebaseMessaging.getAPNSToken(); if (apnsToken == null) { await Future.delayed(retryDelay); retries++; } } if (apnsToken != null) { // APNs token is available, proceed to get FCM token String? fcmToken = await _firebaseMessaging.getToken(); if (fcmToken != null) { // Register the device and token with your backend await registerDeviceAndToken(fcmToken); } else { // Handle the case where FCM token is still null print('FCM token is null.'); } } else { // Handle the case where APNs token is not available after retries print('APNs token not available after retries.'); } } Future registerDeviceAndToken(String fcmToken) async { //fcmToken = fcmToken; print(fcmToken); final user = FirebaseAuth.instance.currentUser; if (user == null) { print('❌ User not logged in'); return; } final deviceId = await DeviceInfoService.getUniqueDeviceId(); //final fcmToken = await FirebaseMessaging.instance.getToken(); print('📱 Device ID from register_fcm: $deviceId'); print('📩 FCM Token from mew getapnd function: $fcmToken'); if (deviceId == null || fcmToken == null) { print('❌ Failed to get deviceId or fcmToken'); return; } final docRef = FirebaseFirestore.instance .collection('master_users') .doc(user.uid) .collection('deviceId') .doc(user.uid); // This document holds a map: { deviceId: fcmToken } print(docRef); try { // Get current data, fallback to empty map final snapshot = await docRef.get(); final data = snapshot.data() ?? <String, dynamic>{}; print(data); // Update or add current deviceId key data[deviceId] = fcmToken; // Save updated map back to Firestore await docRef.set(data); print(data); print('✅ Device ID and FCM token updated/stored under correct structure'); } catch (e) { print('❌ Firestore write error: $e'); } }
0
0
108
Apr ’25
The location coming out of geocoder in CLPlacemark has altitude 0, differently of the input CLLocation
When I execute: geoCoder.reverseGeocodeLocation(location, completionHandler:{[weak self](placemarks, error) in print("reverse geocoding location after altitude: ",location.altitude) print("placemark location first", placemarks?.first?.location?.altitude ?? -1) The input CLLocation has correct altitude 25, instead the location in the output placemarks have altitude 0, when of course they should have the same location. Moreover it is impossible to retrofit any data in the returned placemarks as they are portrayed as a read only property.
0
0
66
Apr ’25
Xcode Preview & Simulator test failed
I upgraded IOS to 15.5 yesterday and then my xcode failed to preview today. The error message I got is: Communication with Apple failed Your team has no devices from which to generate a provisioning profile. Connect a device to use or manually add device IDs in Certificates, Identifiers & Profiles. https://developer.apple.com/account/ Any one knows how to fix it?
0
0
144
Jun ’25
Xcode App Crashing after Initial Launch
I'm quite new to Xcode development, and I've been having an issue test-running my app. When I run the app on my iPhone from my Mac, the app launches properly and works initially. However, when I close the app fully and try to reopen it, it keeps crashing. This occurs whether I test on a physical device or an iPhone simulator. Somehow, this issue does not occur when the app is run on Profile mode. I would appreciate any pointers to debug this.
2
0
131
Mar ’25
Command PhaseScriptExecution failed with a nonzero exit code
Recently, I had an error when building a project with xcode16.3. I'm not sure if it's caused by xcode16.3. I looked in /Users/lijin/Library/Developer/Xcode/DerivedData/Unity-iPhone-bqyvpudaavvrkzdtpgobtxxpzmlb/Build/Intermediates.noindex/ArchiveIntermediates/Unity-iPhone/IntermediateBuildFilesPath/Unity-iPhone.build/Release-iphoneos/artifacts/arm64/buildstate/ and there was no Il2CppOutputProject folder. It seems that Run Script didn't work. I'm not sure what went wrong. I'm using unity version 2023.2.19f, xcode version 16.3, system Mos 15.4 Please help me Showing All Messages chmod: /Users/lijin/Library/Developer/Xcode/DerivedData/Unity-iPhone-bqyvpudaavvrkzdtpgobtxxpzmlb/Build/Intermediates.noindex/ArchiveIntermediates/Unity-iPhone/IntermediateBuildFilesPath/Unity-iPhone.build/Release-iphoneos/artifacts/arm64/buildstate/Il2CppOutputProject/IL2CPP/build/deploy_arm64/il2cpp: No such file or directory Showing All Messages chmod: /Users/lijin/Library/Developer/Xcode/DerivedData/Unity-iPhone-bqyvpudaavvrkzdtpgobtxxpzmlb/Build/Intermediates.noindex/ArchiveIntermediates/Unity-iPhone/IntermediateBuildFilesPath/Unity-iPhone.build/Release-iphoneos/artifacts/arm64/buildstate/Il2CppOutputProject/IL2CPP/build/deploy_arm64/il2cpp-compile: No such file or directory Showing All Messages chmod: /Users/lijin/Library/Developer/Xcode/DerivedData/Unity-iPhone-bqyvpudaavvrkzdtpgobtxxpzmlb/Build/Intermediates.noindex/ArchiveIntermediates/Unity-iPhone/IntermediateBuildFilesPath/Unity-iPhone.build/Release-iphoneos/artifacts/arm64/buildstate/Il2CppOutputProject/IL2CPP/build/deploy_arm64/bee_backend/mac-arm64/bee_backend: No such file or directory Showing All Messages /Users/lijin/Library/Developer/Xcode/DerivedData/Unity-iPhone-bqyvpudaavvrkzdtpgobtxxpzmlb/Build/Intermediates.noindex/ArchiveIntermediates/Unity-iPhone/IntermediateBuildFilesPath/Unity-iPhone.build/Release-iphoneos/GameAssembly.build/Script-C62A2A42F32E085EF849CF0B.sh: line 27: /Users/lijin/Library/Developer/Xcode/DerivedData/Unity-iPhone-bqyvpudaavvrkzdtpgobtxxpzmlb/Build/Intermediates.noindex/ArchiveIntermediates/Unity-iPhone/IntermediateBuildFilesPath/Unity-iPhone.build/Release-iphoneos/artifacts/arm64/buildstate/Il2CppOutputProject/IL2CPP/build/deploy_arm64/il2cpp: No such file or directory
1
0
106
Apr ’25
Call Tracking with CallKit Works in Debug Mode but Not in Release (TestFlight) – iOS
I am working on an iOS app using Flutter that tracks outgoing calls using CallKit. The call tracking functionality works perfectly in Debug mode but does not work when the app is published to TestFlight. I have already added Background Modes (voip, audio, processing, fetch) in Info.plist. I have added CallKit.framework in Xcode under Link Binary With Libraries (set to Optional). <?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>aps-environment</key> <string>production</string> </dict> </plist> These are the necessary permission which I used in 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>BGTaskSchedulerPermittedIdentifiers</key> <array> <string>com.agent.mygenie</string> </array> <key>CADisableMinimumFrameDurationOnPhone</key> <true/> <key>CFBundleDevelopmentRegion</key> <string>$(DEVELOPMENT_LANGUAGE)</string> <key>CFBundleDisplayName</key> <string>MyGenie</string> <key>CFBundleDocumentTypes</key> <array/> <key>CFBundleExecutable</key> <string>$(EXECUTABLE_NAME)</string> <key>CFBundleIdentifier</key> <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string> <key>CFBundleInfoDictionaryVersion</key> <string>6.0</string> <key>CFBundleName</key> <string>mygenie</string> <key>CFBundlePackageType</key> <string>APPL</string> <key>CFBundleShortVersionString</key> <string>$(FLUTTER_BUILD_NAME)</string> <key>CFBundleSignature</key> <string>????</string> <key>CFBundleVersion</key> <string>$(FLUTTER_BUILD_NUMBER)</string> <key>LSRequiresIPhoneOS</key> <true/> <key>NSCallKitUsageDescription</key> <string>This app needs access to CallKit for call handling</string> <key>NSContactsUsageDescription</key> <string>This app needs access to your contacts for calls</string> <key>NSMicrophoneUsageDescription</key> <string>This app needs access to microphone for calls</string> <key>NSPhotoLibraryUsageDescription</key> <string>This app needs access to photo library for profile picture updation</string> <key>UIApplicationSupportsIndirectInputEvents</key> <true/> <key>UIBackgroundModes</key> <array> <string>voip</string> <string>processing</string> <string>fetch</string> <string>audio</string> </array> <key>UILaunchStoryboardName</key> <string>LaunchScreen</string> <key>UIMainStoryboardFile</key> <string>Main</string> <key>UISupportedInterfaceOrientations</key> <array> <string>UIInterfaceOrientationPortrait</string> <string>UIInterfaceOrientationLandscapeLeft</string> <string>UIInterfaceOrientationLandscapeRight</string> </array> <key>UISupportedInterfaceOrientations~ipad</key> <array> <string>UIInterfaceOrientationPortrait</string> <string>UIInterfaceOrientationPortraitUpsideDown</string> <string>UIInterfaceOrientationLandscapeLeft</string> <string>UIInterfaceOrientationLandscapeRight</string> </array> [code.txt](https://developer.apple.com/forums/content/attachment/0a327dbd-652e-41d5-8811-c462d09e0567) </dict> </plist> And below is the file are AppDelegate.swift, call_tracking_mixin.dart, & main_call.dart file for full knowledge
0
0
130
Mar ’25
Unity (IL2CPP) iOS Build: "_placeGeoAnchor" Undefined Symbol for Architecture arm64
Hi all, I’m running into a persistent linker error when building my Unity 6 project (IL2CPP, iOS target) that calls a Swift method via an Objective-C++ wrapper. Despite following all known steps, I keep getting: Undefined symbols for architecture arm64: "_placeGeoAnchor", referenced from: _GeoAnchorTrigger_placeGeoAnchor in libGameAssembly.a ... ld: symbol(s) not found for architecture arm64 I’m trying to place a persistent AR anchor at real-world GPS coordinates (so that the same asset can appear at the same location for a returning user). Since I’m targeting iOS, I can’t use Google’s geospatial anchors (but I sooo wish I could--please apple I beg of you stop being so selfish lol). I've already done these things: Swift file is added to Unity-iPhone target. .mm and .h files are in Unity-iPhone target under Compile Sources. Bridging header is set to Unity-iPhone-Bridging-Header.h. Generated header name is correct (GeoTest-Swift.h). Build Active Architecture Only set to No. Function has attribute((visibility("default"))). Unity project uses IL2CPP scripting backend. Yet I'm still getting the same linker error — it appears Unity (via IL2CPP) references the function, but Xcode doesn't link it. It’s something small that’s being missed with how IL2CPP links native symbols? Or maybe I need to explicitly include something in Link Binary With Libraries? I’ve verified symbol visibility and targets repeatedly. I’ve built AR features in Unity before (for Quest), but this is my first time trying to bridge C# → Objective-C++ → Swift in this way for a geolocation-based AR anchor for an iphone. I'm going crazy, I’ve been stuck on this for 12+ hours now, so any insight or nudge would be deeply appreciated. SPECS: Macbook Pro M4 Pro--Sequoia 15.4 Unity 6000.0.45f1 IPhone 11 iOS 18.4 Xcode 15
0
0
176
Apr ’25
Xcode 16's "Stage All" button does nothing most of the time
Use a project hosted by a filesystem/local Git repository. Make changes to any file in the project. Switch to the "Source Control" Navigator, and the "Changes" sub-navigator within that. Select "Uncommitted Changes", or any file below that. Verify that your changes appear in the source change browser/editor on the right. Click the "Stage All" button. Absolutely nothing happens, 90% of the time. Go back to the Changes navigator, right-click on an item there and select the "Stage Changes in..." popup menu item. It works, every time. I haven't found any pattern to the 10% of the time the "Stage All" button actually works, wrt what changes are selected in the navigator, whether I've already typed a commit message, etc.. I happen to be using Xcode 16.0 on two Macs: a Mac Studio running MacOS 14.6.1, and a 2019 MacBook Pro running MacOS 14.7.1. Both exhibit the same symptoms.
1
0
125
Apr ’25
iOS 18.4で NFC や FeliCa の読み取りがしずらい状況のようです。こちらは認知されていますでしょうか?どのバージョンで直る想定でしょうか?
■概要: 弊社で開発しているアプリ内には、モバイルSuicaを読み取る機能があるのですが、iOS18.4でSuicaの読み取りができない事象に遭遇しています。(ごくまれに読み取れるときがある) ■利用API CoreNFC ■聞きたいこと: こちらいつごろ修正されるか教えてください。 ■参考情報 他社様ですが類似だと思われる事象が発生しております。
0
0
135
Apr ’25
Invalid binary for tvOS app which integrates an xcframework
We're building an SDK (let's call it MyFramework) which is distributed as an .xcframework for developers to integrate it into their own apps. Recently, we've added tvOS support by adding it as a supported destination for the SDK. Essentially, the SDK became a cross-platform framework and easy to be adopted in both iOS and tvOS apps. The .xcframework is generated fine, all builds correctly. We've tested the SDK integrated in test apps. We've also submitted an iOS archive app to the AppStore connect, just to make sure all is well with the AppStore submission. However, when I tried submitting a tvOS archive app (that integrates the same SDK) to the AppStore connect, the build was marked as invalid binary and we've got the following error message: ITMS-90562: Invalid Bundle - One of the nested bundles is built for a platform which is different from the main bundle platform. Please make sure that all bundles have correct platform specification. First, I thought that any of the modules of the framework was not correctly configured for tvOS but that was not the case. Everything compiles ok and it runs in debug as expected. It only fails when trying to submit the tvOS app that integrates the SDK. After a lot of investigating, we realised that the reason for the AppStore submission error is because we codesign the framework. We use codesign to distribute it as cryptographically signed xcframework. codesign --timestamp -v --sign "Apple Distribution: Company (xxxxxxxxxx)" "MyFramework.xcframework" As soon as we remove the above line from our CI/CD pipeline that generates the xcframework, and submit a tvOS archive app that integrates the unsigned framework, the AppStore submission error goes away and the TestFlight build can be tested. I've also tried to just strip the _CodeSignature folder from the .xcframework package but it still fails. So the only solution currently is to not codesign the xcframework to be able to upload tvOS archive apps that integrate the SDK to the AppStore connect. However, we're still puzzled as to why only the tvOS archive app gets the invalid binary error when it integrates a signed SDK. I feel like the error message is quite misleading if we have to stop signing the SDK xcframework for it to be accepted during the AppStore submission. Anyone has any idea? Or has anyone encountered a similar issue? Thanks!
0
0
204
Mar ’25
iOS Simulator (18.4) crashes when user clicks allow for Speech Recognition permission popup
When a new application runs on iOS 18.4 simulator and tries to access the Speech Framework, prompting a request for authorisation to use Speech Recognition, the application will crash if the user clicks allow. Same issue in the visionOS 2.4 simulator. Using Swift 6. Report Identifier: FB17686186 /// Checks speech recognition availability and requests necessary permissions. @MainActor func checkAvailabilityAndPermissions() async { logger.debug("Checking speech recognition availability and permissions...") // 1. Verify that the speechRecognizer instance exists guard let recognizer = speechRecognizer else { logger.error("Speech recognizer is nil - speech recognition won't be available.") reportError(.configurationError(description: "Speech recognizer could not be created."), context: "checkAvailabilityAndPermissions") self.isAvailable = false return } // 2. Check recognizer availability (might change at runtime) if !recognizer.isAvailable { logger.error("Speech recognizer is not available for the current locale.") reportError(.configurationError(description: "Speech recognizer not available."), context: "checkAvailabilityAndPermissions") self.isAvailable = false return } logger.trace("Speech recognizer exists and is available.") // 3. Request Speech Recognition Authorization // IMPORTANT: Add `NSSpeechRecognitionUsageDescription` to Info.plist let speechAuthStatus = SFSpeechRecognizer.authorizationStatus() logger.debug("Current Speech Recognition authorization status: \(speechAuthStatus.rawValue)") if speechAuthStatus == .notDetermined { logger.info("Requesting speech recognition authorization...") // Use structured concurrency to wait for permission result let authStatus = await withCheckedContinuation { continuation in SFSpeechRecognizer.requestAuthorization { status in continuation.resume(returning: status) } } logger.debug("Received authorization status: \(authStatus.rawValue)") // Now handle the authorization result let speechAuthorized = (authStatus == .authorized) handleAuthorizationStatus(status: authStatus, type: "Speech Recognition") // If speech is granted, now check microphone if speechAuthorized { await checkMicrophonePermission() } } else { // Already determined, just handle it let speechAuthorized = (speechAuthStatus == .authorized) handleAuthorizationStatus(status: speechAuthStatus, type: "Speech Recognition") // If speech is already authorized, check microphone if speechAuthorized { await checkMicrophonePermission() } } }
0
0
215
May ’25
{Project}-LinkMap-normal-arm64.txt changed?
I upgraded xcode to 16.2 and found that the txt file generated by Write Link Map File is different from before, no longer containing detailed data. So, how to set it up to obtain the same link map file as the previous xcode version. # Path: /Users/....../xxx.app/__preview.dylib # Arch: arm64 # Object files: [ 0] linker synthesized # Sections: # Address Size Segment Section 0x00004000 0x00000000 __TEXT __text # Symbols: # Address Size File Name
Replies
0
Boosts
0
Views
94
Activity
Mar ’25
FaceTime cuts out audio on my mac M1 app
I have an iOS app that I also run on my Macbook Air M1. My app plays music and I use FaceTime for voice communication with users of my app. How do I stop FaceTime from cutting out the music on my app?
Replies
0
Boosts
0
Views
53
Activity
Apr ’25
Linking arm64 static library for iPhoneSimulator
I work on an iOS app, written in Objective-C and C++, that uses a static library. I build this library using a Run Script in Build Phases in Xcode. This is a fat library, containing arm64 code built for iPhoneOS, and x86_64 code built for iPhoneSimulator. I'm trying to figure out how to create an arm64 iPhoneSimulator build of my app, and I'm running into a problem. If I simply enable arm64 debug builds, I get an error message saying "building for iOS Simulator, but linking in object file built for iOS", indicating that the arm64 iPhoneOS code in the library is not compatible with an arm64 iPhoneSimulator target. Now, I can build the library as arm64 for iPhoneSimulator, but that means I'll have to build a separate library for the simulator build, since lipo won't combine arm64 iPhoneOS and arm64 iPhoneSimulator builds in one file. My question: how can I get Xcode to link with a different library for iPhoneSimulator builds than for iPhoneOS builds? All I can come up with is to use completely separate targets for debugging in the simulator vs. debugging on a real device, but that seems ugly. (It would be even better if I could use the same library for both arm64 iPhoneSimulator and iPhoneOS builds. The library in question is a math library which makes no system calls, so I think the same code should be usable for both builds, if only I could get the linker to allow that.)
Replies
2
Boosts
0
Views
155
Activity
Mar ’25
Xcode has high CPU usage when apparently doing nothing for hours
In 2020 I created FB7719215, which I updated several times (including just now) and in 2021 I created FB9204092, but the issue is still there: when I keep Xcode open (currently version 16.3), my battery drains much quicker, even when it's apparently idle. For instance, today I barely did anything in Xcode, but still it has been at a constant 90% CPU for the last hours, and I keep checking the battery percentage to check how much time I have left. Does anyone at Apple has an explanation, workaround and/or fix?
Replies
2
Boosts
0
Views
150
Activity
Jun ’25
Breakpoints in Xcode 16.3 (16E140) not stop
After update to Xcode 16.3, any breakpoints stopped in simulator and device. The scheme is configured to Debug in Build Configurator.
Replies
0
Boosts
0
Views
94
Activity
Apr ’25
app not playing audio when not in focus
My app works fine when I load it directly from Xcode to my phone via USB but once I load it to TestFlight the sounds no longer play when the app is not in focus or the phone is locked. I've tried every combination of tools available from the support group and from AI! And I'm out of ideas.
Replies
1
Boosts
0
Views
74
Activity
May ’25
Copy Symbol Name and Copy Qualified Symbol Name missing in Xcode 16.3 context menu?
As of Xcode 16.3 it seems Copy Symbol Name and Copy Qualified Symbol Name have been removed from the context menu. I see they're still under Edit > Copy in the Menu Bar, but this location seems far less accessible. Is there a setting to return them to the context menu? I use these on a daily basis, and I find this change to be frustrating.
Replies
1
Boosts
0
Views
118
Activity
Apr ’25
xcode 16.3 now not selecting correct Signing Certificate with Automatically Manage Signing Selected
HI, I upgraded to macos 15.5 and xcode 16.3. Last year I was able to update one of my apps on the App Store without issues. Today, after a successful Testflight test, I now need to submit a new version of my app to the App Store for Distribution as the next version/build. However, when I configure a manual setting for the signing, I can select the correct choices. But when I click automatically manage signing, and choose the correct team, xcode put in the wrong signing certificate. It is choose a development one, and not the distribution one. I am concerned about this since I have read that when using the Archive tool, it choses the automatically manage signing by default. And that check box is selecting the "default" settings. I do not know where these default settings are being set, or how to fix this issue. I do not see any info in my searching up to this point. I hope someone can help. thank you, cc
Replies
0
Boosts
0
Views
108
Activity
May ’25
Distribution and Apple TV Question
Hi, This maybe somewhat confusing, but please bear with me. I currently have an app in the App Store that supports iOS and tvOS. But the tvOS version was a separate app during the development process. I'd like to combine the iOS and tvOS app into one project so its easier to handle and keep track of internally. Can I upload the new Apple TV version to the same place where the current one is, or would I have to delete the current Apple TV version before uploading the newly combined version? I hope I made that clear enough :-) Thank you, Dan Uff
Replies
0
Boosts
0
Views
107
Activity
Apr ’25
APNS NULL
this is our code foe fetching the apnstoken - and registering for the FCM and snding it to our servers. - we are consistently getting apns == null import 'dart:io'; import 'package:firebase_messaging/firebase_messaging.dart'; import 'package:firebase_auth/firebase_auth.dart'; import 'package:cloud_firestore/cloud_firestore.dart'; import 'package:firebase_messaging/firebase_messaging.dart'; import 'package:solaris/services/fetch_deviceId.dart'; Future initializeFCM() async { final FirebaseMessaging _firebaseMessaging = FirebaseMessaging.instance; // Request notification permissions for iOS final settings = await _firebaseMessaging.requestPermission(); print('Notifcation Permission Status: ${settings.authorizationStatus}'); String? apnsToken; int retries = 0; const int maxRetries = 60; const Duration retryDelay = Duration(seconds: 2); // Retry fetching the APNs token until it's available or max retries are reached while (apnsToken == null && retries < maxRetries) { print(retries); apnsToken = await _firebaseMessaging.getAPNSToken(); if (apnsToken == null) { await Future.delayed(retryDelay); retries++; } } if (apnsToken != null) { // APNs token is available, proceed to get FCM token String? fcmToken = await _firebaseMessaging.getToken(); if (fcmToken != null) { // Register the device and token with your backend await registerDeviceAndToken(fcmToken); } else { // Handle the case where FCM token is still null print('FCM token is null.'); } } else { // Handle the case where APNs token is not available after retries print('APNs token not available after retries.'); } } Future registerDeviceAndToken(String fcmToken) async { //fcmToken = fcmToken; print(fcmToken); final user = FirebaseAuth.instance.currentUser; if (user == null) { print('❌ User not logged in'); return; } final deviceId = await DeviceInfoService.getUniqueDeviceId(); //final fcmToken = await FirebaseMessaging.instance.getToken(); print('📱 Device ID from register_fcm: $deviceId'); print('📩 FCM Token from mew getapnd function: $fcmToken'); if (deviceId == null || fcmToken == null) { print('❌ Failed to get deviceId or fcmToken'); return; } final docRef = FirebaseFirestore.instance .collection('master_users') .doc(user.uid) .collection('deviceId') .doc(user.uid); // This document holds a map: { deviceId: fcmToken } print(docRef); try { // Get current data, fallback to empty map final snapshot = await docRef.get(); final data = snapshot.data() ?? <String, dynamic>{}; print(data); // Update or add current deviceId key data[deviceId] = fcmToken; // Save updated map back to Firestore await docRef.set(data); print(data); print('✅ Device ID and FCM token updated/stored under correct structure'); } catch (e) { print('❌ Firestore write error: $e'); } }
Replies
0
Boosts
0
Views
108
Activity
Apr ’25
The location coming out of geocoder in CLPlacemark has altitude 0, differently of the input CLLocation
When I execute: geoCoder.reverseGeocodeLocation(location, completionHandler:{[weak self](placemarks, error) in print("reverse geocoding location after altitude: ",location.altitude) print("placemark location first", placemarks?.first?.location?.altitude ?? -1) The input CLLocation has correct altitude 25, instead the location in the output placemarks have altitude 0, when of course they should have the same location. Moreover it is impossible to retrofit any data in the returned placemarks as they are portrayed as a read only property.
Replies
0
Boosts
0
Views
66
Activity
Apr ’25
Xcode Preview & Simulator test failed
I upgraded IOS to 15.5 yesterday and then my xcode failed to preview today. The error message I got is: Communication with Apple failed Your team has no devices from which to generate a provisioning profile. Connect a device to use or manually add device IDs in Certificates, Identifiers & Profiles. https://developer.apple.com/account/ Any one knows how to fix it?
Replies
0
Boosts
0
Views
144
Activity
Jun ’25
Xcode App Crashing after Initial Launch
I'm quite new to Xcode development, and I've been having an issue test-running my app. When I run the app on my iPhone from my Mac, the app launches properly and works initially. However, when I close the app fully and try to reopen it, it keeps crashing. This occurs whether I test on a physical device or an iPhone simulator. Somehow, this issue does not occur when the app is run on Profile mode. I would appreciate any pointers to debug this.
Replies
2
Boosts
0
Views
131
Activity
Mar ’25
Command PhaseScriptExecution failed with a nonzero exit code
Recently, I had an error when building a project with xcode16.3. I'm not sure if it's caused by xcode16.3. I looked in /Users/lijin/Library/Developer/Xcode/DerivedData/Unity-iPhone-bqyvpudaavvrkzdtpgobtxxpzmlb/Build/Intermediates.noindex/ArchiveIntermediates/Unity-iPhone/IntermediateBuildFilesPath/Unity-iPhone.build/Release-iphoneos/artifacts/arm64/buildstate/ and there was no Il2CppOutputProject folder. It seems that Run Script didn't work. I'm not sure what went wrong. I'm using unity version 2023.2.19f, xcode version 16.3, system Mos 15.4 Please help me Showing All Messages chmod: /Users/lijin/Library/Developer/Xcode/DerivedData/Unity-iPhone-bqyvpudaavvrkzdtpgobtxxpzmlb/Build/Intermediates.noindex/ArchiveIntermediates/Unity-iPhone/IntermediateBuildFilesPath/Unity-iPhone.build/Release-iphoneos/artifacts/arm64/buildstate/Il2CppOutputProject/IL2CPP/build/deploy_arm64/il2cpp: No such file or directory Showing All Messages chmod: /Users/lijin/Library/Developer/Xcode/DerivedData/Unity-iPhone-bqyvpudaavvrkzdtpgobtxxpzmlb/Build/Intermediates.noindex/ArchiveIntermediates/Unity-iPhone/IntermediateBuildFilesPath/Unity-iPhone.build/Release-iphoneos/artifacts/arm64/buildstate/Il2CppOutputProject/IL2CPP/build/deploy_arm64/il2cpp-compile: No such file or directory Showing All Messages chmod: /Users/lijin/Library/Developer/Xcode/DerivedData/Unity-iPhone-bqyvpudaavvrkzdtpgobtxxpzmlb/Build/Intermediates.noindex/ArchiveIntermediates/Unity-iPhone/IntermediateBuildFilesPath/Unity-iPhone.build/Release-iphoneos/artifacts/arm64/buildstate/Il2CppOutputProject/IL2CPP/build/deploy_arm64/bee_backend/mac-arm64/bee_backend: No such file or directory Showing All Messages /Users/lijin/Library/Developer/Xcode/DerivedData/Unity-iPhone-bqyvpudaavvrkzdtpgobtxxpzmlb/Build/Intermediates.noindex/ArchiveIntermediates/Unity-iPhone/IntermediateBuildFilesPath/Unity-iPhone.build/Release-iphoneos/GameAssembly.build/Script-C62A2A42F32E085EF849CF0B.sh: line 27: /Users/lijin/Library/Developer/Xcode/DerivedData/Unity-iPhone-bqyvpudaavvrkzdtpgobtxxpzmlb/Build/Intermediates.noindex/ArchiveIntermediates/Unity-iPhone/IntermediateBuildFilesPath/Unity-iPhone.build/Release-iphoneos/artifacts/arm64/buildstate/Il2CppOutputProject/IL2CPP/build/deploy_arm64/il2cpp: No such file or directory
Replies
1
Boosts
0
Views
106
Activity
Apr ’25
Call Tracking with CallKit Works in Debug Mode but Not in Release (TestFlight) – iOS
I am working on an iOS app using Flutter that tracks outgoing calls using CallKit. The call tracking functionality works perfectly in Debug mode but does not work when the app is published to TestFlight. I have already added Background Modes (voip, audio, processing, fetch) in Info.plist. I have added CallKit.framework in Xcode under Link Binary With Libraries (set to Optional). <?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>aps-environment</key> <string>production</string> </dict> </plist> These are the necessary permission which I used in 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>BGTaskSchedulerPermittedIdentifiers</key> <array> <string>com.agent.mygenie</string> </array> <key>CADisableMinimumFrameDurationOnPhone</key> <true/> <key>CFBundleDevelopmentRegion</key> <string>$(DEVELOPMENT_LANGUAGE)</string> <key>CFBundleDisplayName</key> <string>MyGenie</string> <key>CFBundleDocumentTypes</key> <array/> <key>CFBundleExecutable</key> <string>$(EXECUTABLE_NAME)</string> <key>CFBundleIdentifier</key> <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string> <key>CFBundleInfoDictionaryVersion</key> <string>6.0</string> <key>CFBundleName</key> <string>mygenie</string> <key>CFBundlePackageType</key> <string>APPL</string> <key>CFBundleShortVersionString</key> <string>$(FLUTTER_BUILD_NAME)</string> <key>CFBundleSignature</key> <string>????</string> <key>CFBundleVersion</key> <string>$(FLUTTER_BUILD_NUMBER)</string> <key>LSRequiresIPhoneOS</key> <true/> <key>NSCallKitUsageDescription</key> <string>This app needs access to CallKit for call handling</string> <key>NSContactsUsageDescription</key> <string>This app needs access to your contacts for calls</string> <key>NSMicrophoneUsageDescription</key> <string>This app needs access to microphone for calls</string> <key>NSPhotoLibraryUsageDescription</key> <string>This app needs access to photo library for profile picture updation</string> <key>UIApplicationSupportsIndirectInputEvents</key> <true/> <key>UIBackgroundModes</key> <array> <string>voip</string> <string>processing</string> <string>fetch</string> <string>audio</string> </array> <key>UILaunchStoryboardName</key> <string>LaunchScreen</string> <key>UIMainStoryboardFile</key> <string>Main</string> <key>UISupportedInterfaceOrientations</key> <array> <string>UIInterfaceOrientationPortrait</string> <string>UIInterfaceOrientationLandscapeLeft</string> <string>UIInterfaceOrientationLandscapeRight</string> </array> <key>UISupportedInterfaceOrientations~ipad</key> <array> <string>UIInterfaceOrientationPortrait</string> <string>UIInterfaceOrientationPortraitUpsideDown</string> <string>UIInterfaceOrientationLandscapeLeft</string> <string>UIInterfaceOrientationLandscapeRight</string> </array> [code.txt](https://developer.apple.com/forums/content/attachment/0a327dbd-652e-41d5-8811-c462d09e0567) </dict> </plist> And below is the file are AppDelegate.swift, call_tracking_mixin.dart, & main_call.dart file for full knowledge
Replies
0
Boosts
0
Views
130
Activity
Mar ’25
Unity (IL2CPP) iOS Build: "_placeGeoAnchor" Undefined Symbol for Architecture arm64
Hi all, I’m running into a persistent linker error when building my Unity 6 project (IL2CPP, iOS target) that calls a Swift method via an Objective-C++ wrapper. Despite following all known steps, I keep getting: Undefined symbols for architecture arm64: "_placeGeoAnchor", referenced from: _GeoAnchorTrigger_placeGeoAnchor in libGameAssembly.a ... ld: symbol(s) not found for architecture arm64 I’m trying to place a persistent AR anchor at real-world GPS coordinates (so that the same asset can appear at the same location for a returning user). Since I’m targeting iOS, I can’t use Google’s geospatial anchors (but I sooo wish I could--please apple I beg of you stop being so selfish lol). I've already done these things: Swift file is added to Unity-iPhone target. .mm and .h files are in Unity-iPhone target under Compile Sources. Bridging header is set to Unity-iPhone-Bridging-Header.h. Generated header name is correct (GeoTest-Swift.h). Build Active Architecture Only set to No. Function has attribute((visibility("default"))). Unity project uses IL2CPP scripting backend. Yet I'm still getting the same linker error — it appears Unity (via IL2CPP) references the function, but Xcode doesn't link it. It’s something small that’s being missed with how IL2CPP links native symbols? Or maybe I need to explicitly include something in Link Binary With Libraries? I’ve verified symbol visibility and targets repeatedly. I’ve built AR features in Unity before (for Quest), but this is my first time trying to bridge C# → Objective-C++ → Swift in this way for a geolocation-based AR anchor for an iphone. I'm going crazy, I’ve been stuck on this for 12+ hours now, so any insight or nudge would be deeply appreciated. SPECS: Macbook Pro M4 Pro--Sequoia 15.4 Unity 6000.0.45f1 IPhone 11 iOS 18.4 Xcode 15
Replies
0
Boosts
0
Views
176
Activity
Apr ’25
Xcode 16's "Stage All" button does nothing most of the time
Use a project hosted by a filesystem/local Git repository. Make changes to any file in the project. Switch to the "Source Control" Navigator, and the "Changes" sub-navigator within that. Select "Uncommitted Changes", or any file below that. Verify that your changes appear in the source change browser/editor on the right. Click the "Stage All" button. Absolutely nothing happens, 90% of the time. Go back to the Changes navigator, right-click on an item there and select the "Stage Changes in..." popup menu item. It works, every time. I haven't found any pattern to the 10% of the time the "Stage All" button actually works, wrt what changes are selected in the navigator, whether I've already typed a commit message, etc.. I happen to be using Xcode 16.0 on two Macs: a Mac Studio running MacOS 14.6.1, and a 2019 MacBook Pro running MacOS 14.7.1. Both exhibit the same symptoms.
Replies
1
Boosts
0
Views
125
Activity
Apr ’25
iOS 18.4で NFC や FeliCa の読み取りがしずらい状況のようです。こちらは認知されていますでしょうか?どのバージョンで直る想定でしょうか?
■概要: 弊社で開発しているアプリ内には、モバイルSuicaを読み取る機能があるのですが、iOS18.4でSuicaの読み取りができない事象に遭遇しています。(ごくまれに読み取れるときがある) ■利用API CoreNFC ■聞きたいこと: こちらいつごろ修正されるか教えてください。 ■参考情報 他社様ですが類似だと思われる事象が発生しております。
Replies
0
Boosts
0
Views
135
Activity
Apr ’25
Invalid binary for tvOS app which integrates an xcframework
We're building an SDK (let's call it MyFramework) which is distributed as an .xcframework for developers to integrate it into their own apps. Recently, we've added tvOS support by adding it as a supported destination for the SDK. Essentially, the SDK became a cross-platform framework and easy to be adopted in both iOS and tvOS apps. The .xcframework is generated fine, all builds correctly. We've tested the SDK integrated in test apps. We've also submitted an iOS archive app to the AppStore connect, just to make sure all is well with the AppStore submission. However, when I tried submitting a tvOS archive app (that integrates the same SDK) to the AppStore connect, the build was marked as invalid binary and we've got the following error message: ITMS-90562: Invalid Bundle - One of the nested bundles is built for a platform which is different from the main bundle platform. Please make sure that all bundles have correct platform specification. First, I thought that any of the modules of the framework was not correctly configured for tvOS but that was not the case. Everything compiles ok and it runs in debug as expected. It only fails when trying to submit the tvOS app that integrates the SDK. After a lot of investigating, we realised that the reason for the AppStore submission error is because we codesign the framework. We use codesign to distribute it as cryptographically signed xcframework. codesign --timestamp -v --sign "Apple Distribution: Company (xxxxxxxxxx)" "MyFramework.xcframework" As soon as we remove the above line from our CI/CD pipeline that generates the xcframework, and submit a tvOS archive app that integrates the unsigned framework, the AppStore submission error goes away and the TestFlight build can be tested. I've also tried to just strip the _CodeSignature folder from the .xcframework package but it still fails. So the only solution currently is to not codesign the xcframework to be able to upload tvOS archive apps that integrate the SDK to the AppStore connect. However, we're still puzzled as to why only the tvOS archive app gets the invalid binary error when it integrates a signed SDK. I feel like the error message is quite misleading if we have to stop signing the SDK xcframework for it to be accepted during the AppStore submission. Anyone has any idea? Or has anyone encountered a similar issue? Thanks!
Replies
0
Boosts
0
Views
204
Activity
Mar ’25
iOS Simulator (18.4) crashes when user clicks allow for Speech Recognition permission popup
When a new application runs on iOS 18.4 simulator and tries to access the Speech Framework, prompting a request for authorisation to use Speech Recognition, the application will crash if the user clicks allow. Same issue in the visionOS 2.4 simulator. Using Swift 6. Report Identifier: FB17686186 /// Checks speech recognition availability and requests necessary permissions. @MainActor func checkAvailabilityAndPermissions() async { logger.debug("Checking speech recognition availability and permissions...") // 1. Verify that the speechRecognizer instance exists guard let recognizer = speechRecognizer else { logger.error("Speech recognizer is nil - speech recognition won't be available.") reportError(.configurationError(description: "Speech recognizer could not be created."), context: "checkAvailabilityAndPermissions") self.isAvailable = false return } // 2. Check recognizer availability (might change at runtime) if !recognizer.isAvailable { logger.error("Speech recognizer is not available for the current locale.") reportError(.configurationError(description: "Speech recognizer not available."), context: "checkAvailabilityAndPermissions") self.isAvailable = false return } logger.trace("Speech recognizer exists and is available.") // 3. Request Speech Recognition Authorization // IMPORTANT: Add `NSSpeechRecognitionUsageDescription` to Info.plist let speechAuthStatus = SFSpeechRecognizer.authorizationStatus() logger.debug("Current Speech Recognition authorization status: \(speechAuthStatus.rawValue)") if speechAuthStatus == .notDetermined { logger.info("Requesting speech recognition authorization...") // Use structured concurrency to wait for permission result let authStatus = await withCheckedContinuation { continuation in SFSpeechRecognizer.requestAuthorization { status in continuation.resume(returning: status) } } logger.debug("Received authorization status: \(authStatus.rawValue)") // Now handle the authorization result let speechAuthorized = (authStatus == .authorized) handleAuthorizationStatus(status: authStatus, type: "Speech Recognition") // If speech is granted, now check microphone if speechAuthorized { await checkMicrophonePermission() } } else { // Already determined, just handle it let speechAuthorized = (speechAuthStatus == .authorized) handleAuthorizationStatus(status: speechAuthStatus, type: "Speech Recognition") // If speech is already authorized, check microphone if speechAuthorized { await checkMicrophonePermission() } } }
Replies
0
Boosts
0
Views
215
Activity
May ’25