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

Xcode Documentation

Posts under Xcode subtopic

Post

Replies

Boosts

Views

Activity

Xcode 16.3 / 16.4 UINavigationBar rendering issue?
I've recently upgraded to Sequoia and Xcode 16.3 (now 16.4RC) and a significant change I've noticed vs 16.2 is that the height of UINavigationBar components in storyboards and XIBs is incorrect. Xcode 16.2: Xcode 16.4: This only affects simulated metrics in storyboard / XIB files. I have been unable to find any discussion of this issue anywhere online. Is this actually an Xcode bug that has gone unnoticed / unfixed or is there some underlying intentional change here that I'm unaware of?
0
0
111
May ’25
0xe8008018 (The identity used to sign the executable is no longer valid.)
I created a new App project, I didn't write any my code, I just built it and install it to my iPhone, then I got the error as below: 无法安装“test” Domain: IXUserPresentableErrorDomain Code: 14 Recovery Suggestion: Failed to verify code signature of /var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.X9zsVD/extracted/test.app : 0xe8008018 (The identity used to sign the executable is no longer valid.) Please ensure that the certificates used to sign your app have not expired. If this issue persists, please attach an IPA of your app when sending a report to Apple. User Info: { DVTErrorCreationDateKey = "2025-04-13 03:40:21 +0000"; IDERunOperationFailingWorker = IDEInstallCoreDeviceWorker; } -- Failed to install the app on the device. Domain: com.apple.dt.CoreDeviceError Code: 3002 User Info: { NSURL = "file:///Users/ltf/Library/Developer/Xcode/DerivedData/test-fnnhrmtlclvfdnennxoorbywbuze/Build/Products/Debug-iphoneos/test.app"; } -- Can't install “test” Domain: IXUserPresentableErrorDomain Code: 14 Failure Reason: 无法安装此App,因为无法验证其完整性。 Recovery Suggestion: Failed to verify code signature of /var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.X9zsVD/extracted/test.app : 0xe8008018 (The identity used to sign the executable is no longer valid.) -- Failed to verify code signature of /var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.X9zsVD/extracted/test.app : 0xe8008018 (The identity used to sign the executable is no longer valid.) Domain: MIInstallerErrorDomain Code: 13 User Info: { FunctionName = "+[MICodeSigningVerifier _validateSignatureAndCopyInfoForURL:withOptions:error:]"; LegacyErrorString = ApplicationVerificationFailed; LibMISErrorNumber = "-402620392"; SourceFileLine = 79; } -- Event Metadata: com.apple.dt.IDERunOperationWorkerFinished : { "device_identifier" = "00008120-001E51C011F9A01E"; "device_isCoreDevice" = 1; "device_isWireless" = 1; "device_model" = "iPhone15,5"; "device_osBuild" = "18.3.2 (22D82)"; "device_platform" = "com.apple.platform.iphoneos"; "device_thinningType" = "iPhone15,5"; "dvt_coredevice_version" = "443.19"; "dvt_coresimulator_version" = "1010.10"; "dvt_mobiledevice_version" = "1784.120.2"; "launchSession_schemeCommand" = Run; "launchSession_state" = 1; "launchSession_targetArch" = arm64; "operation_duration_ms" = 2527; "operation_errorCode" = 14; "operation_errorDomain" = IXUserPresentableErrorDomain; "operation_errorWorker" = IDEInstallCoreDeviceWorker; "operation_name" = IDERunOperationWorkerGroup; "param_debugger_attachToExtensions" = 0; "param_debugger_attachToXPC" = 1; "param_debugger_type" = 3; "param_destination_isProxy" = 0; "param_destination_platform" = "com.apple.platform.iphoneos"; "param_diag_113575882_enable" = 0; "param_diag_MainThreadChecker_stopOnIssue" = 0; "param_diag_MallocStackLogging_enableDuringAttach" = 0; "param_diag_MallocStackLogging_enableForXPC" = 1; "param_diag_allowLocationSimulation" = 1; "param_diag_checker_tpc_enable" = 1; "param_diag_gpu_frameCapture_enable" = 0; "param_diag_gpu_shaderValidation_enable" = 0; "param_diag_gpu_validation_enable" = 0; "param_diag_guardMalloc_enable" = 0; "param_diag_memoryGraphOnResourceException" = 0; "param_diag_mtc_enable" = 1; "param_diag_queueDebugging_enable" = 1; "param_diag_runtimeProfile_generate" = 0; "param_diag_sanitizer_asan_enable" = 0; "param_diag_sanitizer_tsan_enable" = 0; "param_diag_sanitizer_tsan_stopOnIssue" = 0; "param_diag_sanitizer_ubsan_enable" = 0; "param_diag_sanitizer_ubsan_stopOnIssue" = 0; "param_diag_showNonLocalizedStrings" = 0; "param_diag_viewDebugging_enabled" = 1; "param_diag_viewDebugging_insertDylibOnLaunch" = 1; "param_install_style" = 2; "param_launcher_UID" = 2; "param_launcher_allowDeviceSensorReplayData" = 0; "param_launcher_kind" = 0; "param_launcher_style" = 99; "param_launcher_substyle" = 0; "param_runnable_appExtensionHostRunMode" = 0; "param_runnable_productType" = "com.apple.product-type.application"; "param_structuredConsoleMode" = 1; "param_testing_launchedForTesting" = 0; "param_testing_suppressSimulatorApp" = 0; "param_testing_usingCLI" = 0; "sdk_canonicalName" = "iphoneos18.4"; "sdk_osVersion" = "18.4"; "sdk_variant" = iphoneos; } -- System Information macOS Version 15.5 (Build 24F5042g) Xcode 16.3 (23785) (Build 16E140) Timestamp: 2025-04-13T11:40:21+08:00
4
0
373
May ’25
Granting Microphone Access through in-app authorisation request on the VisionOS 2.4 Simulator causes it to crash
When requesting authorisation to gain access to the user's microphone in the visionOS 2.4 simulator, the simulator crashes upon the user clicking allow. Using Swift 6, code below. Bug Report: FB17667361 @MainActor private func checkMicrophonePermission() async { logger.debug("Checking microphone permissions...") // Get the current permission status let micAuthStatus = AVAudioApplication.shared.recordPermission logger.debug("Current Microphone permission status: \(micAuthStatus.rawValue)") if micAuthStatus == .undetermined { logger.info("Requesting microphone authorization...") // Use structured concurrency to wait for permission result let granted = await withCheckedContinuation { continuation in AVAudioApplication.requestRecordPermission() { allowed in continuation.resume(returning: allowed) } } logger.debug("Received microphone permission result: \(granted)") // Convert to SFSpeechRecognizerAuthorizationStatus for consistency let status: SFSpeechRecognizerAuthorizationStatus = granted ? .authorized : .denied // Handle the authorization status handleAuthorizationStatus(status: status, type: "Microphone") // If granted, configure audio session if granted { do { try await configureAudioSession() } catch { logger.error("Failed to configure audio session after microphone authorization: \(error.localizedDescription)") self.isAvailable = false self.processingError = .audioSessionError(description: "Failed to configure audio session after microphone authorization") } } } else { // Convert to SFSpeechRecognizerAuthorizationStatus for consistency let status: SFSpeechRecognizerAuthorizationStatus = (micAuthStatus == .granted) ? .authorized : .denied handleAuthorizationStatus(status: status, type: "Microphone") // If already granted, configure audio session if micAuthStatus == .granted { do { try await configureAudioSession() } catch { logger.error("Failed to configure audio session for existing microphone authorization: \(error.localizedDescription)") self.isAvailable = false self.processingError = .audioSessionError(description: "Failed to configure audio session for existing microphone authorization") } } } }
1
1
165
May ’25
SFSpeechRecognizer is not working inside visionOS 2.4 simulator
I know there has been issues with SFSpeechRecognizer in iOS 17+ inside the simulator. Running into issues with speech not being recognised inside the visionOS 2.4 simulator as well (likely because it borrows from iOS frameworks). Just wondering if anyone has any work arounds or advice for this simulator issue. I can't test on device because I don't have an Apple Vision Pro. Using Swift 6 on Xcode 16.3. Below are the console logs & the code that I am using. Console Logs BACKGROUND SPATIAL TAP (hit BackgroundTapPlane) SpeechToTextManager.startRecording() called [0x15388a900|InputElement #0|Initialize] Number of channels = 0 in AudioChannelLayout does not match number of channels = 2 in stream format. iOSSimulatorAudioDevice-22270-1: Abandoning I/O cycle because reconfig pending iOSSimulatorAudioDevice-22270-1: Abandoning I/O cycle because reconfig pending iOSSimulatorAudioDevice-22270-1: Abandoning I/O cycle because reconfig pending iOSSimulatorAudioDevice-22270-1: Abandoning I/O cycle because reconfig pending iOSSimulatorAudioDevice-22270-1: Abandoning I/O cycle because reconfig pending iOSSimulatorAudioDevice-22270-1: Abandoning I/O cycle because reconfig pending SpeechToTextManager.startRecording() completed successfully and recording is active. GameManager.onTapToggle received. speechToTextManager.isAvailable: true, speechToTextManager.isRecording: true GameManager received tap toggle callback. Tapped Object: None BACKGROUND SPATIAL TAP (hit BackgroundTapPlane) GESTURE MANAGER - User is already recording, stopping recording SpeechToTextManager.stopRecording() called GameManager.onTapToggle received. speechToTextManager.isAvailable: true, speechToTextManager.isRecording: false Audio data size: 134400 bytes Recognition task error: No speech detected <--- Code private(set) var isRecording: Bool = false private var recognitionRequest: SFSpeechAudioBufferRecognitionRequest? private var recognitionTask: SFSpeechRecognitionTask? @MainActor func startRecording() async throws { logger.debug("SpeechToTextManager.startRecording() called") guard !isRecording else { logger.warning("Cannot start recording: Already recording.") throw AppError.alreadyRecording } currentTranscript = "" processingError = nil audioBuffer = Data() isRecording = true do { try await configureAudioSession() try await Task.detached { [weak self] in guard let self = self else { throw AppError.internalError(description: "SpeechToTextManager instance deallocated during recording setup.") } try await self.audioProcessor.configureAudioEngine() let (recognizer, request) = try await MainActor.run { () -> (SFSpeechRecognizer, SFSpeechAudioBufferRecognitionRequest) in guard let result = self.createRecognitionRequest() else { throw AppError.configurationError(description: "Speech recognition not available or SFSpeechRecognizer initialization failed.") } return result } await MainActor.run { self.recognitionRequest = request } await MainActor.run { self.recognitionTask = recognizer.recognitionTask(with: request) { [weak self] result, error in guard let self = self else { return } if let error = error { // WE ENTER INTO THIS BLOCK, ALWAYS self.logger.error("Recognition task error: \(error.localizedDescription)") self.processingError = .speechRecognitionError(description: error.localizedDescription) return } . . . } } . . . }.value } catch { . . . } } @MainActor func stopRecording() { logger.debug("SpeechToTextManager.stopRecording() called") guard isRecording else { logger.debug("Not recording, nothing to do") return } isRecording = false Task.detached { [weak self] in guard let self = self else { return } await self.audioProcessor.stopEngine() let finalBuffer = await self.audioProcessor.getAudioBuffer() await MainActor.run { self.recognitionRequest?.endAudio() self.recognitionTask?.cancel() } . . . } }
0
0
172
May ’25
Privacy - Siri Usage Description being reset to default text "Describe why your app needs Siri access" on generating archive
I have an iOS app and that has CarPlay enabled. I have Siri capability and the feature has been tested in Car. The voice commands are working perfectly fine. However, I am facing a weird issue as described below, The key NSSiriUsageDescription, is set to custom text in info.plist. After generating archive, I exported and checked the package contents, in which the the key NSSiriUsageDescription was reset to default text(Describe why your app needs Siri access) in the info.plist. I do not have any dynamic build process that's writing to the info.plist. Only the Siri key is being reset, rest of keys like camera/location permissions are intact. Kindly suggest what needs to be done at my end
0
0
333
May ’25
Canvas keeps resizing to 50/50 width in Xcode
Hello, Xcode seems to reset the canvas preview every time I open a file that does not have a preview. This is extremely annoying when working with two editor tabs. The resize happened before only after restarting Xcode since a few weeks it happens always when opening another file. The preview phone does not even take advantage of the resize. Is there a way to fix this? When I work with the file: After opening a file without preview and going back:
1
0
152
May ’25
Predictive code completion is not working for existing project.
My project was created on a Mac with an Intel processor. Predictive code completion is enabled in Safari settings. The predictive model is loaded. However, the predictive typing does not work. For new projects it works. I took the following steps to fix this problem: 1. Ensure Indexing is Enabled and Up-to-Date: Enable Indexing: In Terminal, run the command defaults write com.apple.dt.XCode IDEIndexDisable 0. Clean and Rebuild: Go to "Product" > "Clean Build Folder" in Xcode. Then, rebuild your project. Check Derived Data: Xcode uses a "DerivedData" folder to store build artifacts. Try clearing this folder by navigating to ~/Library/Developer/Xcode/DerivedData and deleting its contents (you can use the command rm -rfv * in Terminal). 2. Verify Xcode Settings: Enable Predictive Code Completion: Go to Xcode > Settings > Text Editing > Editing and ensure "Predictive code completion" is checked. Check for Predictive Code Completion Model: In Xcode, go to Settings > Components. Ensure the "Predictive Code Completion Model" is downloaded and installed. If it's not, try downloading it by clicking the "+" button and selecting it. Disable and Re-enable: Try disabling predictive code completion in Xcode's settings and then re-enabling it. But this not help. I use latest macOS and Xcode.
1
1
127
May ’25
unsupported option '-G' for target 'arm64-apple-ios12.0'
I had an Intel macbook and I used that to build and release my app to app store but I didn't release for 2 years. Recently a bug was reported that I needed to update the a code and make a new release with my apple silicon macbook. But I get this issue when I go to Product -> Archive. I tried updating pods, as well as adding following line to the Podfile but no change. platform :ios, "12.0" target "myApp" do use_frameworks! pod "AFNetworking" pod "KVNProgress" pod "GCDWebServer" pod "CocoaLumberjack" pod "Intercom" pod "GoogleWebRTC" pod "SAMKeychain" pod "googleapis", :path => '.' pod 'gRPC', '1.0.0' pod 'gRPC-Core', '1.0.0' pod 'gRPC-ProtoRPC', '1.0.0' pod 'gRPC-RxLibrary', '1.0.0' pod 'BoringSSL-GRPC', '0.0.7' end post_install do |installer| installer.pods_project.targets.each do |target| if target.name == 'BoringSSL-GRPC' target.source_build_phase.files.each do |file| if file.settings && file.settings['COMPILER_FLAGS'] flags = file.settings['COMPILER_FLAGS'].split flags.reject! { |flag| flag == '-GCC_WARN_INHIBIT_ALL_WARNINGS' } file.settings['COMPILER_FLAGS'] = flags.join(' ') end end end end end Nothing worked for me. What do I do now? I appreciate any help
0
0
159
May ’25
The UT coverage does not include branch coverage for swift
We using below command to run unit test and collect coverage: xcodebuild -workspace Demo.xcworkspace -scheme VideoTests -configuration Debug -derivedDataPath ../build/derivedData -destination 'platform=iOS Simulator,id=E6630007-570B-4DEB-A023-2BCE91116A8D' -resultBundlePath './fastlane/test_output/VideoTests.xcresult' -enableCodeCoverage YES -testPlan 'Video' test-without-building | tee '/Users/rcadmin/Library/Logs/scan/VideoTests.log' | xcbeautify -q --is-ci and using xcrun llvm-cov show command to generate coverage report: xcrun llvm-cov show /build/unit-test/coverage/libraries/merged/video.o -instr-profile=/app/ios/build/derivedData/Build//ProfileData/E6630007-570B-4DEB-A023-2BCE91116A8D/video.profdata -show-branches count -show-expansions -show-line-counts -use-color -format=html -output-dir coverage and the html report does not include branch coverage: how to generate the branch coverage?
0
0
173
May ’25
Organizer won't load
I'm unable to use Organizer due to this error. The app shown in the error message is an old, unused test app. I'd delete it if I could, but there doesn't seem to be a way to do that. The app is named "@Home Test" and I suspect that the @ character is what's causing the problem. I need to use Organizer for a completely different app on another team, but I can't get past this.
1
0
80
May ’25
Windows / Linux support.
No, seriously, what's the excuse there? How many apps never got to iOS because of this? I already have a computer I'm happy with, buying a Mac just for code is too much. Yet I really wish I could develop for my iPad, because I love my iPad. So here I am, doing android dev for my phone, hopping someday, I can make iOS dev too.
1
0
74
May ’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
274
May ’25
Xcode 16.3 Test Coverage not shown
Test Coverage shows "No Coverage Data" on Xcode 16.3. Code Coverage is checked in my scheme. The same configurations worked on Xcode 16.2 but don't work on Xcode 16.3. any update on when it will be fixed?
Replies
0
Boosts
1
Views
74
Activity
May ’25
Variable name auto-complete gone from lldb?
Ever since updating to Xcode 16.3, auto-completing variable names in lldb does not work. Is this a known bug? Is there a workaround to get it do auto-complete again?
Replies
6
Boosts
7
Views
398
Activity
May ’25
Xcode 16.3 / 16.4 UINavigationBar rendering issue?
I've recently upgraded to Sequoia and Xcode 16.3 (now 16.4RC) and a significant change I've noticed vs 16.2 is that the height of UINavigationBar components in storyboards and XIBs is incorrect. Xcode 16.2: Xcode 16.4: This only affects simulated metrics in storyboard / XIB files. I have been unable to find any discussion of this issue anywhere online. Is this actually an Xcode bug that has gone unnoticed / unfixed or is there some underlying intentional change here that I'm unaware of?
Replies
0
Boosts
0
Views
111
Activity
May ’25
0xe8008018 (The identity used to sign the executable is no longer valid.)
I created a new App project, I didn't write any my code, I just built it and install it to my iPhone, then I got the error as below: 无法安装“test” Domain: IXUserPresentableErrorDomain Code: 14 Recovery Suggestion: Failed to verify code signature of /var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.X9zsVD/extracted/test.app : 0xe8008018 (The identity used to sign the executable is no longer valid.) Please ensure that the certificates used to sign your app have not expired. If this issue persists, please attach an IPA of your app when sending a report to Apple. User Info: { DVTErrorCreationDateKey = "2025-04-13 03:40:21 +0000"; IDERunOperationFailingWorker = IDEInstallCoreDeviceWorker; } -- Failed to install the app on the device. Domain: com.apple.dt.CoreDeviceError Code: 3002 User Info: { NSURL = "file:///Users/ltf/Library/Developer/Xcode/DerivedData/test-fnnhrmtlclvfdnennxoorbywbuze/Build/Products/Debug-iphoneos/test.app"; } -- Can't install “test” Domain: IXUserPresentableErrorDomain Code: 14 Failure Reason: 无法安装此App,因为无法验证其完整性。 Recovery Suggestion: Failed to verify code signature of /var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.X9zsVD/extracted/test.app : 0xe8008018 (The identity used to sign the executable is no longer valid.) -- Failed to verify code signature of /var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.X9zsVD/extracted/test.app : 0xe8008018 (The identity used to sign the executable is no longer valid.) Domain: MIInstallerErrorDomain Code: 13 User Info: { FunctionName = "+[MICodeSigningVerifier _validateSignatureAndCopyInfoForURL:withOptions:error:]"; LegacyErrorString = ApplicationVerificationFailed; LibMISErrorNumber = "-402620392"; SourceFileLine = 79; } -- Event Metadata: com.apple.dt.IDERunOperationWorkerFinished : { "device_identifier" = "00008120-001E51C011F9A01E"; "device_isCoreDevice" = 1; "device_isWireless" = 1; "device_model" = "iPhone15,5"; "device_osBuild" = "18.3.2 (22D82)"; "device_platform" = "com.apple.platform.iphoneos"; "device_thinningType" = "iPhone15,5"; "dvt_coredevice_version" = "443.19"; "dvt_coresimulator_version" = "1010.10"; "dvt_mobiledevice_version" = "1784.120.2"; "launchSession_schemeCommand" = Run; "launchSession_state" = 1; "launchSession_targetArch" = arm64; "operation_duration_ms" = 2527; "operation_errorCode" = 14; "operation_errorDomain" = IXUserPresentableErrorDomain; "operation_errorWorker" = IDEInstallCoreDeviceWorker; "operation_name" = IDERunOperationWorkerGroup; "param_debugger_attachToExtensions" = 0; "param_debugger_attachToXPC" = 1; "param_debugger_type" = 3; "param_destination_isProxy" = 0; "param_destination_platform" = "com.apple.platform.iphoneos"; "param_diag_113575882_enable" = 0; "param_diag_MainThreadChecker_stopOnIssue" = 0; "param_diag_MallocStackLogging_enableDuringAttach" = 0; "param_diag_MallocStackLogging_enableForXPC" = 1; "param_diag_allowLocationSimulation" = 1; "param_diag_checker_tpc_enable" = 1; "param_diag_gpu_frameCapture_enable" = 0; "param_diag_gpu_shaderValidation_enable" = 0; "param_diag_gpu_validation_enable" = 0; "param_diag_guardMalloc_enable" = 0; "param_diag_memoryGraphOnResourceException" = 0; "param_diag_mtc_enable" = 1; "param_diag_queueDebugging_enable" = 1; "param_diag_runtimeProfile_generate" = 0; "param_diag_sanitizer_asan_enable" = 0; "param_diag_sanitizer_tsan_enable" = 0; "param_diag_sanitizer_tsan_stopOnIssue" = 0; "param_diag_sanitizer_ubsan_enable" = 0; "param_diag_sanitizer_ubsan_stopOnIssue" = 0; "param_diag_showNonLocalizedStrings" = 0; "param_diag_viewDebugging_enabled" = 1; "param_diag_viewDebugging_insertDylibOnLaunch" = 1; "param_install_style" = 2; "param_launcher_UID" = 2; "param_launcher_allowDeviceSensorReplayData" = 0; "param_launcher_kind" = 0; "param_launcher_style" = 99; "param_launcher_substyle" = 0; "param_runnable_appExtensionHostRunMode" = 0; "param_runnable_productType" = "com.apple.product-type.application"; "param_structuredConsoleMode" = 1; "param_testing_launchedForTesting" = 0; "param_testing_suppressSimulatorApp" = 0; "param_testing_usingCLI" = 0; "sdk_canonicalName" = "iphoneos18.4"; "sdk_osVersion" = "18.4"; "sdk_variant" = iphoneos; } -- System Information macOS Version 15.5 (Build 24F5042g) Xcode 16.3 (23785) (Build 16E140) Timestamp: 2025-04-13T11:40:21+08:00
Replies
4
Boosts
0
Views
373
Activity
May ’25
Resetting settings through the Apple Vision Pro Simulator is bugged
When you try to reset settings through the Apple Vision Pro simulator (VisionOS 2.4) you get an error "Preferences quit unexpectedly". Bug report: FB17666053
Replies
0
Boosts
0
Views
178
Activity
May ’25
Granting Microphone Access through in-app authorisation request on the VisionOS 2.4 Simulator causes it to crash
When requesting authorisation to gain access to the user's microphone in the visionOS 2.4 simulator, the simulator crashes upon the user clicking allow. Using Swift 6, code below. Bug Report: FB17667361 @MainActor private func checkMicrophonePermission() async { logger.debug("Checking microphone permissions...") // Get the current permission status let micAuthStatus = AVAudioApplication.shared.recordPermission logger.debug("Current Microphone permission status: \(micAuthStatus.rawValue)") if micAuthStatus == .undetermined { logger.info("Requesting microphone authorization...") // Use structured concurrency to wait for permission result let granted = await withCheckedContinuation { continuation in AVAudioApplication.requestRecordPermission() { allowed in continuation.resume(returning: allowed) } } logger.debug("Received microphone permission result: \(granted)") // Convert to SFSpeechRecognizerAuthorizationStatus for consistency let status: SFSpeechRecognizerAuthorizationStatus = granted ? .authorized : .denied // Handle the authorization status handleAuthorizationStatus(status: status, type: "Microphone") // If granted, configure audio session if granted { do { try await configureAudioSession() } catch { logger.error("Failed to configure audio session after microphone authorization: \(error.localizedDescription)") self.isAvailable = false self.processingError = .audioSessionError(description: "Failed to configure audio session after microphone authorization") } } } else { // Convert to SFSpeechRecognizerAuthorizationStatus for consistency let status: SFSpeechRecognizerAuthorizationStatus = (micAuthStatus == .granted) ? .authorized : .denied handleAuthorizationStatus(status: status, type: "Microphone") // If already granted, configure audio session if micAuthStatus == .granted { do { try await configureAudioSession() } catch { logger.error("Failed to configure audio session for existing microphone authorization: \(error.localizedDescription)") self.isAvailable = false self.processingError = .audioSessionError(description: "Failed to configure audio session for existing microphone authorization") } } } }
Replies
1
Boosts
1
Views
165
Activity
May ’25
Crash on saving an autocreated testplan in Xcode 16.3?
Is anybody able to save the autocreated testplan successfully with Xcode 16.3? I get a crash no matter what (different filenames, locations, machines, ...). Now created a template project: same thing. Xcode Version 16.3 (16E140) on macOS 15.5 (24F74) Known issue, or am I holding it wrong?
Replies
1
Boosts
0
Views
260
Activity
May ’25
SFSpeechRecognizer is not working inside visionOS 2.4 simulator
I know there has been issues with SFSpeechRecognizer in iOS 17+ inside the simulator. Running into issues with speech not being recognised inside the visionOS 2.4 simulator as well (likely because it borrows from iOS frameworks). Just wondering if anyone has any work arounds or advice for this simulator issue. I can't test on device because I don't have an Apple Vision Pro. Using Swift 6 on Xcode 16.3. Below are the console logs & the code that I am using. Console Logs BACKGROUND SPATIAL TAP (hit BackgroundTapPlane) SpeechToTextManager.startRecording() called [0x15388a900|InputElement #0|Initialize] Number of channels = 0 in AudioChannelLayout does not match number of channels = 2 in stream format. iOSSimulatorAudioDevice-22270-1: Abandoning I/O cycle because reconfig pending iOSSimulatorAudioDevice-22270-1: Abandoning I/O cycle because reconfig pending iOSSimulatorAudioDevice-22270-1: Abandoning I/O cycle because reconfig pending iOSSimulatorAudioDevice-22270-1: Abandoning I/O cycle because reconfig pending iOSSimulatorAudioDevice-22270-1: Abandoning I/O cycle because reconfig pending iOSSimulatorAudioDevice-22270-1: Abandoning I/O cycle because reconfig pending SpeechToTextManager.startRecording() completed successfully and recording is active. GameManager.onTapToggle received. speechToTextManager.isAvailable: true, speechToTextManager.isRecording: true GameManager received tap toggle callback. Tapped Object: None BACKGROUND SPATIAL TAP (hit BackgroundTapPlane) GESTURE MANAGER - User is already recording, stopping recording SpeechToTextManager.stopRecording() called GameManager.onTapToggle received. speechToTextManager.isAvailable: true, speechToTextManager.isRecording: false Audio data size: 134400 bytes Recognition task error: No speech detected <--- Code private(set) var isRecording: Bool = false private var recognitionRequest: SFSpeechAudioBufferRecognitionRequest? private var recognitionTask: SFSpeechRecognitionTask? @MainActor func startRecording() async throws { logger.debug("SpeechToTextManager.startRecording() called") guard !isRecording else { logger.warning("Cannot start recording: Already recording.") throw AppError.alreadyRecording } currentTranscript = "" processingError = nil audioBuffer = Data() isRecording = true do { try await configureAudioSession() try await Task.detached { [weak self] in guard let self = self else { throw AppError.internalError(description: "SpeechToTextManager instance deallocated during recording setup.") } try await self.audioProcessor.configureAudioEngine() let (recognizer, request) = try await MainActor.run { () -> (SFSpeechRecognizer, SFSpeechAudioBufferRecognitionRequest) in guard let result = self.createRecognitionRequest() else { throw AppError.configurationError(description: "Speech recognition not available or SFSpeechRecognizer initialization failed.") } return result } await MainActor.run { self.recognitionRequest = request } await MainActor.run { self.recognitionTask = recognizer.recognitionTask(with: request) { [weak self] result, error in guard let self = self else { return } if let error = error { // WE ENTER INTO THIS BLOCK, ALWAYS self.logger.error("Recognition task error: \(error.localizedDescription)") self.processingError = .speechRecognitionError(description: error.localizedDescription) return } . . . } } . . . }.value } catch { . . . } } @MainActor func stopRecording() { logger.debug("SpeechToTextManager.stopRecording() called") guard isRecording else { logger.debug("Not recording, nothing to do") return } isRecording = false Task.detached { [weak self] in guard let self = self else { return } await self.audioProcessor.stopEngine() let finalBuffer = await self.audioProcessor.getAudioBuffer() await MainActor.run { self.recognitionRequest?.endAudio() self.recognitionTask?.cancel() } . . . } }
Replies
0
Boosts
0
Views
172
Activity
May ’25
Xcode 16.3 Pods Compilation Issue
I am on MacOs 15.4.1 which is being deployed with an old version of Ruby ruby 2.6.10 and bundler version 1.17.2. I ran pod install after generating the pods with these versions and during the application compilation there have been several issues reported against pods code.
Replies
0
Boosts
0
Views
114
Activity
May ’25
Privacy - Siri Usage Description being reset to default text "Describe why your app needs Siri access" on generating archive
I have an iOS app and that has CarPlay enabled. I have Siri capability and the feature has been tested in Car. The voice commands are working perfectly fine. However, I am facing a weird issue as described below, The key NSSiriUsageDescription, is set to custom text in info.plist. After generating archive, I exported and checked the package contents, in which the the key NSSiriUsageDescription was reset to default text(Describe why your app needs Siri access) in the info.plist. I do not have any dynamic build process that's writing to the info.plist. Only the Siri key is being reset, rest of keys like camera/location permissions are intact. Kindly suggest what needs to be done at my end
Replies
0
Boosts
0
Views
333
Activity
May ’25
Canvas keeps resizing to 50/50 width in Xcode
Hello, Xcode seems to reset the canvas preview every time I open a file that does not have a preview. This is extremely annoying when working with two editor tabs. The resize happened before only after restarting Xcode since a few weeks it happens always when opening another file. The preview phone does not even take advantage of the resize. Is there a way to fix this? When I work with the file: After opening a file without preview and going back:
Replies
1
Boosts
0
Views
152
Activity
May ’25
Predictive code completion is not working for existing project.
My project was created on a Mac with an Intel processor. Predictive code completion is enabled in Safari settings. The predictive model is loaded. However, the predictive typing does not work. For new projects it works. I took the following steps to fix this problem: 1. Ensure Indexing is Enabled and Up-to-Date: Enable Indexing: In Terminal, run the command defaults write com.apple.dt.XCode IDEIndexDisable 0. Clean and Rebuild: Go to "Product" > "Clean Build Folder" in Xcode. Then, rebuild your project. Check Derived Data: Xcode uses a "DerivedData" folder to store build artifacts. Try clearing this folder by navigating to ~/Library/Developer/Xcode/DerivedData and deleting its contents (you can use the command rm -rfv * in Terminal). 2. Verify Xcode Settings: Enable Predictive Code Completion: Go to Xcode > Settings > Text Editing > Editing and ensure "Predictive code completion" is checked. Check for Predictive Code Completion Model: In Xcode, go to Settings > Components. Ensure the "Predictive Code Completion Model" is downloaded and installed. If it's not, try downloading it by clicking the "+" button and selecting it. Disable and Re-enable: Try disabling predictive code completion in Xcode's settings and then re-enabling it. But this not help. I use latest macOS and Xcode.
Replies
1
Boosts
1
Views
127
Activity
May ’25
iOS 15.0 Minimum deployment version
Hi, I'm trying to plan some roadmaps out and also have some issues with ios 15.0. Since it's no longer supported by Apple, any word on if/when iOS 15.0 will be removed from the "minimum deployment" version list in Xcode?
Replies
0
Boosts
1
Views
75
Activity
May ’25
unsupported option '-G' for target 'arm64-apple-ios12.0'
I had an Intel macbook and I used that to build and release my app to app store but I didn't release for 2 years. Recently a bug was reported that I needed to update the a code and make a new release with my apple silicon macbook. But I get this issue when I go to Product -> Archive. I tried updating pods, as well as adding following line to the Podfile but no change. platform :ios, "12.0" target "myApp" do use_frameworks! pod "AFNetworking" pod "KVNProgress" pod "GCDWebServer" pod "CocoaLumberjack" pod "Intercom" pod "GoogleWebRTC" pod "SAMKeychain" pod "googleapis", :path => '.' pod 'gRPC', '1.0.0' pod 'gRPC-Core', '1.0.0' pod 'gRPC-ProtoRPC', '1.0.0' pod 'gRPC-RxLibrary', '1.0.0' pod 'BoringSSL-GRPC', '0.0.7' end post_install do |installer| installer.pods_project.targets.each do |target| if target.name == 'BoringSSL-GRPC' target.source_build_phase.files.each do |file| if file.settings && file.settings['COMPILER_FLAGS'] flags = file.settings['COMPILER_FLAGS'].split flags.reject! { |flag| flag == '-GCC_WARN_INHIBIT_ALL_WARNINGS' } file.settings['COMPILER_FLAGS'] = flags.join(' ') end end end end end Nothing worked for me. What do I do now? I appreciate any help
Replies
0
Boosts
0
Views
159
Activity
May ’25
Swift Package Manager and AWS
I am trying to create a simple Swift package that uses AWS SDK for Swift but I get an error that says it can't import one of the modules, actually any of the modules. I researched this for a couple of days but can't figure out how to get this working. Any help would be appreciated.
Replies
1
Boosts
0
Views
96
Activity
May ’25
The UT coverage does not include branch coverage for swift
We using below command to run unit test and collect coverage: xcodebuild -workspace Demo.xcworkspace -scheme VideoTests -configuration Debug -derivedDataPath ../build/derivedData -destination 'platform=iOS Simulator,id=E6630007-570B-4DEB-A023-2BCE91116A8D' -resultBundlePath './fastlane/test_output/VideoTests.xcresult' -enableCodeCoverage YES -testPlan 'Video' test-without-building | tee '/Users/rcadmin/Library/Logs/scan/VideoTests.log' | xcbeautify -q --is-ci and using xcrun llvm-cov show command to generate coverage report: xcrun llvm-cov show /build/unit-test/coverage/libraries/merged/video.o -instr-profile=/app/ios/build/derivedData/Build//ProfileData/E6630007-570B-4DEB-A023-2BCE91116A8D/video.profdata -show-branches count -show-expansions -show-line-counts -use-color -format=html -output-dir coverage and the html report does not include branch coverage: how to generate the branch coverage?
Replies
0
Boosts
0
Views
173
Activity
May ’25
Organizer won't load
I'm unable to use Organizer due to this error. The app shown in the error message is an old, unused test app. I'd delete it if I could, but there doesn't seem to be a way to do that. The app is named "@Home Test" and I suspect that the @ character is what's causing the problem. I need to use Organizer for a completely different app on another team, but I can't get past this.
Replies
1
Boosts
0
Views
80
Activity
May ’25
Windows / Linux support.
No, seriously, what's the excuse there? How many apps never got to iOS because of this? I already have a computer I'm happy with, buying a Mac just for code is too much. Yet I really wish I could develop for my iPad, because I love my iPad. So here I am, doing android dev for my phone, hopping someday, I can make iOS dev too.
Replies
1
Boosts
0
Views
74
Activity
May ’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
274
Activity
May ’25
iOS Simulator (18.4) crashes when user clicks allow for microphone permission popup
Start from clean iOS 18.4 simulator. Application tried to request authorisation from user for microphone access. Clicking allow caused the application crashed. Used Swift 6. Report Identifier FB17686864.
Replies
0
Boosts
0
Views
204
Activity
May ’25