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

Xcode Documentation

Posts under Xcode subtopic

Post

Replies

Boosts

Views

Activity

Bonjour Capabilities
I'm a noobie but doing a tutorial where it requires me to add these capabilities to my project. Access Wi-Fi Information Network Extentions Bonjour Services I have the Access Wi-Fi and Network Extentions installed but I could not find Bonjour Services Any help would be much appreciated! Thanks
0
0
148
Jan ’25
Is there a way of specifying unicode characters for the BUNDLE_DISPLAY_NAME in an .xcconfig?
The BUNDLE_DISPLAY_NAME of my app changes (between Testing, Staging, Production) so that it's obvious to testers etc. which varian they are using. The name contains unicode space to ensure the OS doesn't apply kerning to the spacing within the app name. If this is put directly into the info.plist then on the iPhone desktop it's displayed as desired i.e. if the info.plist contains My Application Name Then on the iPhone desktop it displays as: My Application Name However if the name is defined in an .xcconfig file as BUNDLE_DISPLAY_NAME = Xfinity Call Guard And the info.plist contains $(BUNDLE_DISPLAY_NAME) Then the name is displayed on the iPhone desktop as My Application N.... Is there a way to specify the name with the unicode characters within an .xcconfig and get that to appear as spaces on the desktop?
2
0
404
Jan ’25
Preview and bundle for modular app target
I have a dummy project that is set up in the following way: one Xcode project two frameworks, UI and Feature, Feature embeds UI-framework three app targets, two that are SwiftUI lifecycle and one UIKit lifecycle all app targets import the Feature framework all app targets have same setup for asset catalogue The point of this setup is to be able to switch between app target scheme and see preview changes accordingly. That works 100% with anything coming from the asset catalogue and even localization catalogues. The dummy project exists as a proof of concept for the main project (8 years old, all Swift) I am working on. However, the same setup does not work in the main project. I am suspecting it has to do with how the project is initialised and bundles. I print out the bundles to see which bundles are registered. Dummy project will print out the bundle based on app target, the main bundle being based on the selected scheme. The main project will have the previews.com.apple.PreviewAgent.iOS as main bundle.
2
0
420
Jan ’25
Issue with CBConnectPeripheralOptionNotifyOnConnectionKey Not Triggering Alert When Reconnecting in Background
I'm working with CBConnectPeripheralOptionNotifyOnConnectionKey, and my understanding is that it should trigger an alert when a reconnection occurs while the central app is in the background. To test this, I've set up two separate iPhone devices—one acting as the peripheral and the other as the central. The process I'm using is as follows: The central app connects to the peripheral app. I then switch to a different app on the central device, which causes the central app to go into the background. I manually disconnect and reconnect Bluetooth on the central device, which should trigger the peripheral app to reestablish the connection. However, despite the central app being in the background, I don't see the expected alert on the central side. The connection reestablishes correctly, but no alert appears. I would appreciate any insights on what might be causing this issue or if I'm misunderstanding the behavior of CBConnectPeripheralOptionNotifyOnConnectionKey. I'd be happy to provide more specific code or logs if needed. Thanks in advance! I’m relatively new to Core Bluetooth and feel like I’ve explored most of the options, but I’m still encountering this issue.
3
0
427
Jan ’25
Fully symbolicate crash log received from App Review
A new app I submitted to review was rejected due to a crash. I cannot reproduce the crash, even running it on exact the same device model used by App Review. So I need to symbolicate the ips crash log they provided me. Using MacSymbolicate and the archive located using Xcode Organizer I was able to partially symbolicate the crash log. To fully symbolicate the crash log, however, according to MacSymbolicate, I would need two more symbol files, which can't be located, because they relate to system frameworks (SwiftData and _SwiftData_SwiftUI). I have tried to follow the instructions provided on https://developer.apple.com/documentation/xcode/adding-identifiable-symbol-names-to-a-crash-report but I had no success. It seems to me that the instructions contained there for symbolicating using Xcode do not apply for crash logs downloaded from appstoreconnect after an App Review rejection. Also, the instructions seem to be out of date, e.g. "To symbolicate in Xcode, click the Device Logs button in the Devices and Simulators window.": This button was replaced by "Open Recent Logs", which opens what seems to be a different window (according to some online research). Is it possible to fully symbolicate such an ips file downloaded from App Review team? If so, how can this be achieved? Thanks This is how the partially symbolicated crash log looks like: Hardware Model: iPad13,16 ... AppStoreTools: 16C5031b Code Type: ARM-64 (Native) Role: Foreground Parent Process: launchd [1] ... OS Version: iPhone OS 18.2.1 (22C161) Release Type: User Report Version: 104 Exception Type: EXC_BREAKPOINT (SIGTRAP) Exception Codes: 0x0000000000000001, 0x000000018c100e2c Termination Reason: SIGNAL 5 Trace/BPT trap: 5 Terminating Process: exc handler [6226] Triggered by Thread: 0 Thread 0 name: Dispatch queue: com.apple.main-thread Thread 0 Crashed: 0 libswiftCore.dylib 0x18c100e2c _assertionFailure(_:_:file:line:flags:) + 264 1 SwiftData 0x24fa6f3b4 0x24fa4a000 + 152500 ... 14 SwiftData 0x24fa89700 0x24fa4a000 + 259840 15 _SwiftData_SwiftUI 0x250cd34e4 0x250cce000 + 21732 16 _SwiftData_SwiftUI 0x250cd1364 0x250cce000 + 13156 17 XXX 0x10451f7ac closure #1 in closure #2 in closure #1 in PaymentsMonthView.body.getter (in XXX) (PaymentsMonthView.swift:119) + 1324972 18 XXX 0x10451ea14 closure #1 in PaymentsMonthView.body.getter (in XXX) (PaymentsMonthView.swift:99) + 1321492 19 SwiftUICore 0x24fd5d304 specialized ViewBodyAccessor.updateBody(of:changed:) + 1240 20 SwiftUICore 0x24fd5cd4c closure #1 in DynamicBody.updateValue() + 600 21 SwiftUICore 0x24fd5c008 DynamicBody.updateValue() + 928 ... ... Thread 0 crashed with ARM Thread State (64-bit): x0: 0x000000011128b208 x1: 0x0000000200000003 x2: 0x0000000000000001 x3: 0x00000001130be744 x4: 0xfffffffffe1cd413 x5: 0x0000000000000013 x6: 0x0000000000000020 x7: 0x00000000000007fc x8: 0xfffffffe00000000 x9: 0x0000000200000003 x10: 0x0000000000000003 x11: 0x0000000000000000 x12: 0x00180080004019e0 x13: 0x00100000004017fc x14: 0x00000001046d23e0 x15: 0x00000000000001e0 x16: 0x952d0001130bde00 x17: 0x00000000020007fc x18: 0x0000000000000000 x19: 0x000000024fb661e0 x20: 0x000000011128b200 x21: 0x0000000000000000 x22: 0x000000000000000b x23: 0x000000000000001d x24: 0x0000000000000040 x25: 0x000000024fb64790 x26: 0xf000000000000977 x27: 0x0000000000000000 x28: 0x000000024fb64750 fp: 0x000000016ba188f0 lr: 0x000000018c100e2c sp: 0x000000016ba18820 pc: 0x000000018c100e2c cpsr: 0x60001000 far: 0x0000000000000000 esr: 0xf2000001 (Breakpoint) brk 1 Binary Images: 0x1043dc000 - 0x104633fff Locador arm64 <78fc8961d731321ba0c8f9bb051109c5> /private/var/containers/Bundle/Application/FE1C10C5-49C1-4022-860A-6C3515E2F8BB/Locador.app/Locador 0x1047fc000 - 0x104807fff libobjc-trampolines.dylib arm64e <be05652226b13a508ad193ac99fcdc9c> /private/preboot/Cryptexes/OS/usr/lib/libobjc-trampolines.dylib 0x18c0c9000 - 0x18c66afff libswiftCore.dylib arm64e <e9b1dc6b7fef3bbbb083f4e8faaa53df> /usr/lib/swift/libswiftCore.dylib 0x24fa4a000 - 0x24fb88ff7 SwiftData arm64e <90275b26954b349996ff44ada39f0358> /System/Library/Frameworks/SwiftData.framework/SwiftData 0x250cce000 - 0x250cebff8 _SwiftData_SwiftUI arm64e <d250fe30854c3f1c85fc8a89dec5d484> /System/Library/Frameworks/_SwiftData_SwiftUI.framework/_SwiftData_SwiftUI 0x24fcf8000 - 0x2508d4fff SwiftUICore arm64e <647b91f1620d3741bd708f9f26b5674b> /System/Library/Frameworks/SwiftUICore.framework/SwiftUICore 0x1ba831000 - 0x1ba874fff AttributeGraph arm64e <5eeff865ac123665a9dba9d612eb0e9f> /System/Library/PrivateFrameworks/AttributeGraph.framework/AttributeGraph 0x19220e000 - 0x1934d0fff SwiftUI arm64e <0b283f5831ae385f9c8ff128fd0e30b8> /System/Library/Frameworks/SwiftUI.framework/SwiftUI 0x1902f8000 - 0x19220dfff UIKitCore arm64e <f80c6ee450ca346f90ebbb3da9817503> /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore 0x18dadc000 - 0x18e01ffff CoreFoundation arm64e <6a60be13e6573beca9acba239ae29862> /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation 0x1dacec000 - 0x1dacf4fff GraphicsServices arm64e <f4e7a885f4913721862dc57403f4d821> /System/Library/PrivateFrameworks/GraphicsServices.framework/GraphicsServices 0x1b3d31000 - 0x1b3db413f dyld arm64e <4eb7459fe23738ce82403f3e2e1ce5ab> /usr/lib/dyld 0x0 - 0xffffffffffffffff ??? unknown-arch <00000000000000000000000000000000> ??? 0x1df105000 - 0x1df13efe3 libsystem_kernel.dylib arm64e <e3965df1a3a3374a94eaf86739c5cc8e> /usr/lib/system/libsystem_kernel.dylib 0x18c6e1000 - 0x18d411fff Foundation arm64e <7274dde368d634a08e677726e1265e80> /System/Library/Frameworks/Foundation.framework/Foundation 0x2185fc000 - 0x218608ff3 libsystem_pthread.dylib arm64e <b2fe0dfa67de3d7282676c42073e0e8d> /usr/lib/system/libsystem_pthread.dylib 0x1958ce000 - 0x19594dffb libsystem_c.dylib arm64e <8d425c7257c93e54a1e1e243cbdfc446> /usr/lib/system/libsystem_c.dylib EOF
2
0
390
Jan ’25
Unable to download file from iCloud Documents.
I am unable to download file from iCloud Documents from my swift project. I was able to successfully upload the file to iCloud Documents but now when I try to download same file at the uploaded path. It is giving me error that I don't have permission to view the file. Please find exact error below. [ERROR] couldn't fetch remote operation IDs: NSError: Cocoa 257 "The file couldn’t be opened because you don’t have permission to view it." "Error returned from daemon: Error Domain=com.apple.accounts Code=7 "(null)""
4
0
995
Jan ’25
Xcode Git integration destroyed my git local repository
This is using Xcode 16.2 (16C5032a), MacOS 15.2, on MacbookPro 16 M1 Pro. I have two repositories, one for an application and another one for a framework. The repository framework is integrated into the application one as git submodule. I was going to push the submodule to Github using Xcode git integration. It detects some conflicts and ask to pull. I pull. A window appears with some conflicting files (5 or 6). Review them. While reviewing something in Xcode crashed, but as Xcode was still up and running, ignored the crash. Decided to cancel the conflicts window and inspect my local files. Pull again but this time I decided to pull both repos. Review the conflicting changes and decided to cancel again to continue by hand in a terminal. Then, I notice that the project for the submodule is in red and that the "Changes" tab shows a bunch of files with and admiration mark. I go to the submodule folder in Finder and... everything inside the submodule folder was gone, disappeared, lost... everything, even the ".git" folder (only remained a binary folder for a component I use for the framework but is empty). I decided to run a recovery tool. It finds nothing to recover inside that folder, nothing. A lot of files even from years ago but nothing inside that folder? how is that possible? I filled a Feedback assistant issue: FB16307182 Could it be possible that Xcode "moved" everything to another place (I'm desperate so I'm starting to think in absurd explanations) Thanks
1
0
428
Jan ’25
Configure Format to Multiple Lines?
Is there any way to modify the behaviour of this command? I really dislike that it adds a break after the opening parenthesis and would also prefer it to use the traditional multi-line style where the lines are aligned with their semicolons. Alternatively, is there a way to run the "Format File with 'swift-format'" command without implicitly triggering "Format to Multiple Lines", as it apparently does? Having to reformat my method's signatures afterwards really makes this feature unattractive to me at the moment.
0
0
146
Jan ’25
Prevent 2 videos from playing at once
Im building a video feed that scrolls and acts similar to TikTok or equivalent. Running into an issue where the video doesnt stop playing after you scroll to the next video, but stops only after the video after that. so it takes 2 scrolls for the video to stop playing, meanwhile every video starts playing when its in view normally, but because it takes 2 scrolls for the first video to stop, there are always 2 videos playing at the same time. Is there a function i can add so that only one video plays at a time? I tried the activeIndex with the onappear / on disappear but that didnt change anything other than all the videos following the first video wouldnt play. Here is some of the code I have, I need some dire help here. Swift Pros only - thank you in advance! import AVKit import MapKit struct LiveEventCard: View { let event: CustomEvent var isActive: Bool // Determines if the video should play let onCommentButtonTapped: () -> Void @EnvironmentObject var watchlistManager: WatchlistManager @EnvironmentObject var liveNowManager: LiveNowManager @State private var player: AVPlayer? var body: some View { GeometryReader { geometry in ZStack { // Video Player if let videoURL = event.fullVideoPath(), FileManager.default.fileExists(atPath: videoURL.path) { VideoPlayer(player: player) .frame(width: geometry.size.width, height: geometry.size.height) .onAppear { initializePlayer(with: videoURL) handlePlayback() } .onChange(of: isActive) { _ in handlePlayback() } .onDisappear { cleanupPlayer() } } else { // Error Placeholder Rectangle() .fill(Color.black.opacity(0.8)) .frame(width: geometry.size.width, height: geometry.size.height) .overlay( Text("Unable to play video") .foregroundColor(.white) .font(.headline) ) } // Gradient Overlay at the Top VStack { LinearGradient( gradient: Gradient(colors: [.black.opacity(0.7), .clear]), startPoint: .top, endPoint: .bottom ) .frame(height: 150) Spacer() } .edgesIgnoringSafeArea(.top) // Event Title + Subtitle VStack(alignment: .leading, spacing: 4) { Text(event.name ?? "Unknown Event") .font(.title2) .fontWeight(.bold) .foregroundColor(.white) Text("\(event.genre ?? "Genre") • \(event.time ?? "Time")") .font(.subheadline) .foregroundColor(.white.opacity(0.8)) } .padding([.top, .leading], 16) .frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .topLeading) // Buttons at Bottom-Right VStack(spacing: 12) { // Like Button ActionButton( systemName: liveNowManager.likedEvents.contains(event.id ?? "") ? "heart.fill" : "heart", action: { toggleLike() }, accessibilityLabel: liveNowManager.likedEvents.contains(event.id ?? "") ? "Unlike" : "Like" ) Text("\(liveNowManager.likesCount[event.id ?? ""] ?? 0)") .font(.caption) .foregroundColor(.white) // Watchlist Button ActionButton( systemName: watchlistManager.isInWatchlist(event: event) ? "checkmark.circle" : "plus.circle", action: { toggleWatchlist(for: event) }, accessibilityLabel: watchlistManager.isInWatchlist(event: event) ? "Remove from Watchlist" : "Add to Watchlist" ) // Profile Button ActionButton( systemName: "person.crop.circle", action: { /* Profile Action */ }, accessibilityLabel: "Profile" ) // Comments Button ActionButton( systemName: "bubble.right", action: { onCommentButtonTapped() }, accessibilityLabel: "Comments" ) // Location Button ActionButton( systemName: "mappin.and.ellipse", action: { /* Map Action */ }, accessibilityLabel: "Location" ) } .padding(.trailing, 16) .padding(.bottom, 75) .frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .bottomTrailing) } } } // MARK: - Player Management private func initializePlayer(with videoURL: URL) { if player == nil { player = AVPlayer(url: videoURL) } } private func handlePlayback() { guard let player = player else { return } if isActive { player.play() } else { player.pause() } } private func cleanupPlayer() { player?.pause() player = nil } // MARK: - Actions private func toggleWatchlist(for event: CustomEvent) { if watchlistManager.isInWatchlist(event: event) { watchlistManager.removeFromWatchlist(event: event) } else { watchlistManager.addToWatchlist(event: event) } } private func toggleLike() { liveNowManager.toggleLike(for: event.id ?? "") } }
1
0
344
Jan ’25
Download Container and Replace Container not working properly in XCode16
"Download Container" will not download folders that do not contain any files. That is, if you have a folder structure like this: Application Support/work1/(no file) Application Support/work2/test.txt When you execute "Download Container", the following configuration will be downloaded. Application Support/work2/test.txt The work1 folder has disappeared. This is also true for "Replace Container". If you execute "Replace Container" with the same data configuration, the data will be entered into the app with the following configuration. Application Support/work2/test.txt The work1 folder has disappeared. This issue is having a significant impact on development and debugging. Since I am experiencing this problem with XCode 16, I use XCode 13 when performing "Download Container" and "Replace Container". (XCode13, XCode14 works fine) This problem is probably an embedded problem from XCode15 or XCode16, so I would appreciate an early resolution.
2
0
397
Jan ’25
Assistance Required for Accessing Non-Secure HTTP API in Ionic Build App
Dear Team, I was previously able to access a non-secure HTTP API in my Ionic-built app. However, I am now encountering an error where the API requests are being rejected. Interestingly, this API works perfectly on Android and web platforms without any issues. As part of my troubleshooting, I have already added the following lines to my Info.plist file: <key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> </dict> Could you kindly suggest any alternative solutions or additional settings required to access this HTTP API? Your help would be greatly appreciated. Thank you, Mozib
0
0
169
Jan ’25
Fully symbolicate crash log received from App Review
A new app I submitted to review was rejected due to a crash. I cannot reproduce the crash, even running it on exact the same device model used by App Review. So I need to symbolicate the ips crash log they provided me. Using MacSymbolicate and the archive located using Xcode Organizer I was able to partially symbolicate the crash log. To fully symbolicate the crash log, however, according to MacSymbolicate, I would need two more symbol files, which can't be located, because they relate to system frameworks (SwiftData and _SwiftData_SwiftUI). I have tried to follow the instructions provided on https://developer.apple.com/documentation/xcode/adding-identifiable-symbol-names-to-a-crash-report but I had no success. It seems to me that the instructions contained there for symbolicating using Xcode do not apply for crash logs downloaded from appstoreconnect after an App Review rejection. Also, the instructions seem to be out of date, e.g. "To symbolicate in Xcode, click the Device Logs button in the Devices and Simulators window.": This button was replaced by "Open Recent Logs", which opens what seems to be a different window (according to some online research). Is it possible to fully symbolicate such an ips file downloaded from App Review team? If so, how can this be achieved? Thanks This is how the partially symbolicated crash log looks like: Hardware Model: iPad13,16 ... AppStoreTools: 16C5031b Code Type: ARM-64 (Native) Role: Foreground Parent Process: launchd [1] ... OS Version: iPhone OS 18.2.1 (22C161) Release Type: User Report Version: 104 Exception Type: EXC_BREAKPOINT (SIGTRAP) Exception Codes: 0x0000000000000001, 0x000000018c100e2c Termination Reason: SIGNAL 5 Trace/BPT trap: 5 Terminating Process: exc handler [6226] Triggered by Thread: 0 Thread 0 name: Dispatch queue: com.apple.main-thread Thread 0 Crashed: 0 libswiftCore.dylib 0x18c100e2c _assertionFailure(_:_:file:line:flags:) + 264 1 SwiftData 0x24fa6f3b4 0x24fa4a000 + 152500 ... 14 SwiftData 0x24fa89700 0x24fa4a000 + 259840 15 _SwiftData_SwiftUI 0x250cd34e4 0x250cce000 + 21732 16 _SwiftData_SwiftUI 0x250cd1364 0x250cce000 + 13156 17 XXX 0x10451f7ac closure #1 in closure #2 in closure #1 in PaymentsMonthView.body.getter (in XXX) (PaymentsMonthView.swift:119) + 1324972 18 XXX 0x10451ea14 closure #1 in PaymentsMonthView.body.getter (in XXX) (PaymentsMonthView.swift:99) + 1321492 19 SwiftUICore 0x24fd5d304 specialized ViewBodyAccessor.updateBody(of:changed:) + 1240 20 SwiftUICore 0x24fd5cd4c closure #1 in DynamicBody.updateValue() + 600 21 SwiftUICore 0x24fd5c008 DynamicBody.updateValue() + 928 ... ... Thread 0 crashed with ARM Thread State (64-bit): x0: 0x000000011128b208 x1: 0x0000000200000003 x2: 0x0000000000000001 x3: 0x00000001130be744 x4: 0xfffffffffe1cd413 x5: 0x0000000000000013 x6: 0x0000000000000020 x7: 0x00000000000007fc x8: 0xfffffffe00000000 x9: 0x0000000200000003 x10: 0x0000000000000003 x11: 0x0000000000000000 x12: 0x00180080004019e0 x13: 0x00100000004017fc x14: 0x00000001046d23e0 x15: 0x00000000000001e0 x16: 0x952d0001130bde00 x17: 0x00000000020007fc x18: 0x0000000000000000 x19: 0x000000024fb661e0 x20: 0x000000011128b200 x21: 0x0000000000000000 x22: 0x000000000000000b x23: 0x000000000000001d x24: 0x0000000000000040 x25: 0x000000024fb64790 x26: 0xf000000000000977 x27: 0x0000000000000000 x28: 0x000000024fb64750 fp: 0x000000016ba188f0 lr: 0x000000018c100e2c sp: 0x000000016ba18820 pc: 0x000000018c100e2c cpsr: 0x60001000 far: 0x0000000000000000 esr: 0xf2000001 (Breakpoint) brk 1 Binary Images: 0x1043dc000 - 0x104633fff Locador arm64 <78fc8961d731321ba0c8f9bb051109c5> /private/var/containers/Bundle/Application/FE1C10C5-49C1-4022-860A-6C3515E2F8BB/Locador.app/Locador 0x1047fc000 - 0x104807fff libobjc-trampolines.dylib arm64e <be05652226b13a508ad193ac99fcdc9c> /private/preboot/Cryptexes/OS/usr/lib/libobjc-trampolines.dylib 0x18c0c9000 - 0x18c66afff libswiftCore.dylib arm64e <e9b1dc6b7fef3bbbb083f4e8faaa53df> /usr/lib/swift/libswiftCore.dylib 0x24fa4a000 - 0x24fb88ff7 SwiftData arm64e <90275b26954b349996ff44ada39f0358> /System/Library/Frameworks/SwiftData.framework/SwiftData 0x250cce000 - 0x250cebff8 _SwiftData_SwiftUI arm64e <d250fe30854c3f1c85fc8a89dec5d484> /System/Library/Frameworks/_SwiftData_SwiftUI.framework/_SwiftData_SwiftUI 0x24fcf8000 - 0x2508d4fff SwiftUICore arm64e <647b91f1620d3741bd708f9f26b5674b> /System/Library/Frameworks/SwiftUICore.framework/SwiftUICore 0x1ba831000 - 0x1ba874fff AttributeGraph arm64e <5eeff865ac123665a9dba9d612eb0e9f> /System/Library/PrivateFrameworks/AttributeGraph.framework/AttributeGraph 0x19220e000 - 0x1934d0fff SwiftUI arm64e <0b283f5831ae385f9c8ff128fd0e30b8> /System/Library/Frameworks/SwiftUI.framework/SwiftUI 0x1902f8000 - 0x19220dfff UIKitCore arm64e <f80c6ee450ca346f90ebbb3da9817503> /System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore 0x18dadc000 - 0x18e01ffff CoreFoundation arm64e <6a60be13e6573beca9acba239ae29862> /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation 0x1dacec000 - 0x1dacf4fff GraphicsServices arm64e <f4e7a885f4913721862dc57403f4d821> /System/Library/PrivateFrameworks/GraphicsServices.framework/GraphicsServices 0x1b3d31000 - 0x1b3db413f dyld arm64e <4eb7459fe23738ce82403f3e2e1ce5ab> /usr/lib/dyld 0x0 - 0xffffffffffffffff ??? unknown-arch <00000000000000000000000000000000> ??? 0x1df105000 - 0x1df13efe3 libsystem_kernel.dylib arm64e <e3965df1a3a3374a94eaf86739c5cc8e> /usr/lib/system/libsystem_kernel.dylib 0x18c6e1000 - 0x18d411fff Foundation arm64e <7274dde368d634a08e677726e1265e80> /System/Library/Frameworks/Foundation.framework/Foundation 0x2185fc000 - 0x218608ff3 libsystem_pthread.dylib arm64e <b2fe0dfa67de3d7282676c42073e0e8d> /usr/lib/system/libsystem_pthread.dylib 0x1958ce000 - 0x19594dffb libsystem_c.dylib arm64e <8d425c7257c93e54a1e1e243cbdfc446> /usr/lib/system/libsystem_c.dylib EOF
3
0
426
Jan ’25
Mocking or simulating CBPeripheral, CBCentralManager, etc in tests
I am developing an app that uses CoreBluetooth to communicate with a proprietary piece of hardware. I would like to be able to write tests for it, but there does not seem to be any way to mock or simulate the presence of, for example a CBPeripheral object. This library (https://github.com/NordicSemiconductor/IOS-CoreBluetooth-Mock) almost does what I need, but it's not quite flexible enough. I think they have the right idea, but it doesn't seem to be actively maintained anymore. This seems like a pretty big hole in the iOS SDK. Is there really not an officially supported way of testing BLE functionality?
5
0
1k
Jan ’25
xCode Organizer hang issues & logs
Our team is currently handling hang issues and logs received by the Organizer during our project. Regarding the xCode Organizer, we’d like to ask a few questions: The hang rate is presented as a bar chart for each app version. Is there any way to get detailed information for each versions? For example, what percentage of the hang rate is attributed to users on different iOS versions? We've encountered a situation where the hang logs have decreased, but the hang rate has increased. Could you explain why this might occur? I was wondering how the hang rate is sampled. For instance, does it record all users who experience a hang, or only those under specific conditions? The situation is that we can see only a handful of hang logs (around 13), but we have hundreds of thousands of DAUs. This ratio seems quite off. Could you explain what might cause us to receive such a small number of logs for each version?
2
0
523
Jan ’25
Xcode Preview Not Working - XOJITError, JITError
Error Diagnostics I'm able to run my app on a simulator, but previews aren't working even for the simplest test preview. I build my project with XcodeGen. Here is my project.yml file: name: Ecstasy options: deploymentTarget: iOS: 17.0 xcodeVersion: "15.2" developmentLanguage: en targets: Ecstasy: type: application platform: iOS sources: - path: Sources - path: Resources info: path: Configurations/Info.plist properties: CFBundleDevelopmentRegion: "$(DEVELOPMENT_LANGUAGE)" CFBundleExecutable: "$(EXECUTABLE_NAME)" CFBundleIdentifier: "$(PRODUCT_BUNDLE_IDENTIFIER)" CFBundleInfoDictionaryVersion: "6.0" CFBundleName: "$(PRODUCT_NAME)" CFBundlePackageType: "APPL" CFBundleShortVersionString: "1.0" CFBundleVersion: "1" UILaunchStoryboardName: "" UIViewControllerBasedStatusBarAppearance: true UIStatusBarHidden: false UIRequiresFullScreen: true UISupportedInterfaceOrientations: - UIInterfaceOrientationPortrait UIUserInterfaceStyle: Light settings: base: DEVELOPMENT_TEAM: MLJ2C965T7 PRODUCT_BUNDLE_IDENTIFIER: com.raw-e.Ecstasy SWIFT_OPTIMIZATION_LEVEL: "-O" SWIFT_COMPILATION_MODE: wholemodule ENABLE_PREVIEWS: YES DEBUG_INFORMATION_FORMAT: dwarf-with-dsym CLANG_ENABLE_MODULES: YES SWIFT_VERSION: 6.0 TARGETED_DEVICE_FAMILY: 1 ENABLE_BITCODE: NO SWIFT_ACTIVE_COMPILATION_CONDITIONS: DEBUG SWIFT_EMIT_LOC_STRINGS: YES SWIFT_STRICT_CONCURRENCY: complete ENABLE_USER_SCRIPT_SANDBOXING: YES configs: debug: SWIFT_OPTIMIZATION_LEVEL: "-Onone" SWIFT_COMPILATION_MODE: incremental ENABLE_TESTABILITY: YES GCC_OPTIMIZATION_LEVEL: 0 ONLY_ACTIVE_ARCH: YES DEBUG_INFORMATION_FORMAT: dwarf ENABLE_PREVIEWS: YES SWIFT_ACTIVE_COMPILATION_CONDITIONS: "DEBUG PREVIEW" release: SWIFT_OPTIMIZATION_LEVEL: "-O" SWIFT_COMPILATION_MODE: wholemodule ENABLE_TESTABILITY: NO GCC_OPTIMIZATION_LEVEL: s ONLY_ACTIVE_ARCH: NO dependencies: - package: APITime - package: GUITime - package: LoggingTime - package: Shares packages: APITime: { path: "/Users/raw-e/Desktop/Useful Swift Things/My Packages/APITime" } GUITime: { path: "/Users/raw-e/Desktop/Useful Swift Things/My Packages/GUITime" } LoggingTime: { path: "/Users/raw-e/Desktop/Useful Swift Things/My Packages/LoggingTime" } Shares: { path: "/Users/raw-e/Desktop/Useful Swift Things/My Packages/Shares" }
1
0
309
Jan ’25