Search results for

SwiftUI List performance

50,614 results found

Post

Replies

Boosts

Views

Activity

Reply to iOS 26: Unable to Transition from CallKit Screen to App when remoteHandle is nil or empty string
Are you asking if there's a reason we're not setting Unknown Caller in update.localizedCallerName? No. I was actually asking why you weren't using a CXHandle with a type set to generic and a string value to set to Unknown Caller (or whatever you wanted). So, let me actually step back for a moment and clarify the general roles these two different properties have: CXHandle -> This is intended to be the unique identifier for a particular call source. Phone calls use phone numbers, while other systems might use email addresses or string values (like user names). CXCallUpdate.localizedCallerName -> The name you actually want to show the user. Note that the mapping between these two values is definitely not one-to-one. For example: The same person can have multiple handles associated with it (for example, because a user has multiple account/phone numbers). Totally unrelated CXHandles may have the same localizedCallerName, either because of simple name overlap (there's more than one Kevin Elliott in the world)
Topic: App & System Services SubTopic: General Tags:
Jan ’26
Reply to Inquiries about AVPlayer's ABR switching logic and control APIs for HLS/LL-HLS
To your first question, AVPlayer ABR logic is constantly evolving, so it is not published or documented. If you are running into a case where it is not performing as well as you think it should be, please file a bug with logs and sample content and we will try to look into what's going on. Regarding API, AVPlayerItem also offers preferredMaximumResolution, and for LL specifically, configuredTimeOffsetFromLive, recommendedTimeOffsetFromLive and automaticallyPreservesTimeOffsetFromLive also influence ABR behavior.
Topic: Media Technologies SubTopic: Streaming Tags:
Jan ’26
Altool cannot authenticate with a managed Apple account
I am trying to list the providers on a managed Apple account using altool but I am getting an error. I am using the following command: xcrun altool --list-providers -u -p The error message indicates that a general error has occurred but does not specify what the root cause may be. 2026-01-05 11:13:29.272 ERROR: [altool.600001E6C1C0] Auth context delegate failed to get headers. Error Domain=ITunesConnectFoundationErrorDomain Code=1611 Unable to generate an Apple Connect token at this time due to a general error UserInfo={NSLocalizedDescription=Unable to generate an Apple Connect token at this time due to a general error} Failed to get providers. 2026-01-05 11:13:29.273 ERROR: [altool.600001E6C1C0] Unable to generate an Apple Connect token at this time due to a general error (1611) This command worked before the Apple ID was converted to a managed account. I have tried other managed accounts, as well as creating new app specific passwords but all fail with the same error. How can I accomplis
0
0
51
Jan ’26
Reply to cant use app store connect
Thank you for your post. Please review the documentation on the App Store Developer Roles to determine the role you need to access the App Store or check with your administrator for an enterprise account. https://developer.apple.com/help/account/access/roles/ Roles in App Store Connect: Admin: Can manage users, view financial data, and create app listings. App Manager: Similar to Admin but cannot manage account settings or payment methods. Developer: Can access technical resources and submit apps but has limited access to financial and business data. Marketing: Can create marketing assets and manage pre-order configurations. Finance: Focuses on financial data and reporting. Albert Pascual
  Worldwide Developer Relations.
Jan ’26
SwiftUI, iOS 26.2, ToolbarItem .largeTitle and .title, overlap issue
I built this very simple example to demonstrate the issue im facing on iOS 26 when trying to use custom ToolbarItem element for .largeTitle. Code: struct ContentView: View { var body: some View { NavigationStack { Screen() .navigationTitle(First) .toolbar { ToolbarItem(placement: .largeTitle) { Text(First) .font(.largeTitle) .border(Color.black) } } .navigationDestination(for: Int.self) { integer in DestinationScreen(integer: integer) } } } } struct Screen: View { var body: some View { List { ForEach(1..<50) { index in NavigationLink(value: index) { Text(index.description) .font(.largeTitle) } } } } } struct DestinationScreen: View { let integer: Int var body: some View { HStack { Text(integer.description) .font(.largeTitle) Spacer() } .padding() .navigationTitle(integer.description) .toolbar { ToolbarItem(placement: .largeTitle) { Text(integer.description) .font(.largeTitle) .border(Color.black) } } } } As shown on the gif, when navigating between pages, titles are going to overlap for a short wh
Topic: UI Frameworks SubTopic: SwiftUI
1
0
114
Jan ’26
Reply to [DriverKit SCSI] SCSI probe stalls for Target ID > 0 with IOUserSCSIParallelInterfaceController
Hi Kevin, Thank you very much for your guidance. I am happy to report that the issue has been resolved. I would like to share the root cause and the final solution here in case it helps other developers facing similar issues. As you suspected, it was indeed a bug in our code regarding capability reporting. Although we were successfully calling AsyncCreateTargetForID(1), the macOS SCSI stack was silently aborting the probe sequence after the initial TEST UNIT READY command. The issue was located in our implementation of UserReportHighestSupportedDeviceID. We were mistakenly hardcoding the return value to 0: // Buggy implementation kern_return_t IMPL(DRV_MAIN_CLASS_NAME, UserReportHighestSupportedDeviceID) { *id = 0; // Reported that the HBA only supports ID 0 return kIOReturnSuccess; } Because the HBA reported a maximum supported ID of 0, the macOS SCSI Family treated Target 1 as an out-of-bounds device. While the object was instantiated and visible in ioreg, the kernel refused to Register or Match it. This ex
Topic: App & System Services SubTopic: Drivers Tags:
Jan ’26
ProRAW: Demystify 48MP vs 12MP binning based on lighting?
Hi everyone, does anybody have any resources I could check out regarding the 48->12mp binning behavior on supported sensors? I know the 48mp sensor on iPhone can automatically bin pixels for better low light performance. But not sure how to reliably make this happen in practice. On iPhone 14 Pro+ with a 48MP sensor, I want the best of both worlds for ProRAW: ∙ Bright light: 48MP full resolution ∙ Low light: 12MP pixel-binned for better noise `photoOutput.maxPhotoDimensions = CMVideoDimensions(width: 8064, height: 6048) let settings = AVCapturePhotoSettings(rawPixelFormatType: proRawFormat, processedFormat: [...]) settings.photoQualityPrioritization = .quality // NOT setting settings.maxPhotoDimensions — always get 12MP` When I omit maxPhotoDimensions, iOS always returns 12MP regardless of lighting. When I set it to 48MP, I always get 48MP. Is there an API to let iOS automatically choose the optimal resolution based on conditions, or should I detect low light myself (via device.iso / exposureDurati
0
0
454
Jan ’26
Reply to Is this normal while developing an app on the watch?
When you say you unpaired the Watch, do you mean you actually unpaired it from the iPhone or unpaired it in the Devices & Simulators window in Xcode? I recently had a bunch of those errors, and the fix for me was to do the following. Note, this took about 12 hours overnight for it to self-heal, so you may also have to try again in the morning. Unpair the Watch in Xcode, in the Devices & Simulators window. Click the + button in the bottom-left of that window. Your Watch will not be listed. Close the windows and quit Xcode. Re-launch Xcode. Re-open the Devices & Simulators window. If your Watch is not automatically listed as a disconnected device, click the + button again. If your device is listed and available to set up, click Next to do so. Your Watch should now work normally with Xcode. If your device is not listed, quit Xcode, wait about 12 hours, and try again. I don't know why it took so long, but I was sitting there trying to add it again for at least an ho
Jan ’26
How to properly localize AppIntent dialogs for Siri?
Hi! I have defined the following app intent. It returns a result with a dialog to confirm that the intent has been executed. Naturally, that dialog needs to be localized properly. But the String interpolation with the provided format doesn't do that. I specified wide for the width parameter and expect spelled-out unit names. However, in the textual output, Siri always uses the abbreviated unit (e.g. min or s), in all languages I tested. In the audio output, Siri says minutes in English where the textual representation is min. In German, Siri says min, so it basically reads the textual representation aloud and that's not quite understandable to the user. struct StartTimerIntent: AppIntent { static let title: LocalizedStringResource = Start New Timer static var description = IntentDescription(Starts a timer with a custom duration.) @Parameter(title: Duration, description: The duration of the timer.) var duration: Measurement func perform() async throws -> some IntentResult & ProvidesDialog { //
3
0
391
Jan ’26
Reply to Why there's no rgb32Float in Metal?
GPU pixel formats typically use a power-of-2 number of bytes: 1, 2, 4, 8, or 16 bytes, i.e. 8, 16, 32, 64, or 128 bits. The formats you list are 4 bytes, 8, and 16. A hypothetical rgb32Float would be 12 bytes or 96 bits, neither of which is a power of 2.
Topic: Graphics & Games SubTopic: Metal Tags:
Jan ’26
Listing files of a background asset
Is there a way to enumerate all files within a folder of an asset pack or just all files in general? My application is using the Apple demo code to load a file from an Apple hosted asset pack: let descriptor = try AssetPackManager.shared.descriptor(for: NAV/NavData.db3) defer { try descriptor.close() } if let path = path(for: descriptor) { self.database = try Database(path: path) } As my Navigation Data is updated each month with an updated asset pack I would like to have the name of the .db3 file reflect the current data cycle (e.g. NAV2601.db3, NAV2602.db3, ...) Ideally I would like to iterate over all files within the NAV folder of the current asset pack and pick the most recent one. Unfortunately, neither the AssetPackManager nor the AssetPack object seem to include an API for this. It would be cool to have something like: let files = try AssetPackManager.shared.files(for: NAV/) for file in files { //Check and load }
5
0
380
Jan ’26
Swift Playgrounds macOS repeatedly asks “My App would like to access data from other apps”
Environment: Swift Playgrounds (macOS) SwiftUI App Preview macOS version: 26.2 (25C56) Issue: In Swift Playgrounds on macOS, the app repeatedly shows the system permission dialog: “My App would like to access data from other apps. Keeping app data separate makes it easier to manage your privacy and security.” Steps to Reproduce: Create a new SwiftUI app in Swift Playgrounds. Run the SwiftUI App Preview. When the permission dialog appears, click “Allow”. Expected Result: The permission should be granted once and persist, allowing the preview to continue normally. Actual Result: After clicking “Allow”, the SwiftUI App Preview crashes and restarts. When the preview restarts, the same permission dialog appears again. This repeats indefinitely, creating a loop. Notes: This occurs even when no explicit file system or inter-app data access code is written. The permission choice does not appear to persist between preview restarts. Question: Is this a known limitation of Swift Playg
2
0
349
Jan ’26