Axel Le Pennec
Axel Le Pennec
@alpennec.com
Indie app developer (Apple platforms) from Paris, France 🇫🇷
404 followers128 following775 posts
I just remembered Retention Messaging in App Store Connect, announced at WWDC 2026. It's coming this fall 🤞🏻 developer.apple.com/videos/play/...
As pointed out by others, running on an iPhone Duo simulator with iOS 27.1 works as expected (using Xcode 27.1 or 27.2). I hope Apple will soon provide a new 27.2 RC version (or a 27.3 beta) that fixes these iPhone Duo issues.
I’m probably folding it wrong, but I can’t seem to get reservedRegions to display correctly on iPhone Duo simulator. Am I missing something, or is there a trick to getting this right?
Here’s how the App Store app shows iPhone Duo screenshots: 1. Landscape then portrait, it only shows one landscape (like a search banner). 2. Portrait then portrait, it shows both. 3. Portrait then landscape, it also shows both.
iPhone Duo owners, can you share a screenshot of an App Store search result please? I'm curious to see how the App Store displays mixed portrait and landscape screenshots. Thank you!
Axel Le Pennec reposted
In #SwiftUI, how to have a content always visible at the bottom of the screen (like the Apple Music mini player or an onboarding "next" button)? safeAreaInset/safeAreaBar modifier on a NavigationStack does not update the stack content inset. FB23732628 github.com/feedback-ass...
In #SwiftUI, how to have a content always visible at the bottom of the screen (like the Apple Music mini player or an onboarding "next" button)? safeAreaInset/safeAreaBar modifier on a NavigationStack does not update the stack content inset. FB23732628 github.com/feedback-ass...
Is there a way to avoid the #SwiftUI List jumping when using a swipeAction that inserts/removes the same item in the List ("Favorites" section) while keeping the original item in the List? The animation is smooth if I perform the same action when tapping. Gist: gist.github.com/alpennec/f9d...
Axel Le Pennec reposted
Is there a way to avoid the #SwiftUI List jumping when using a swipeAction that inserts/removes the same item in the List ("Favorites" section) while keeping the original item in the List? The animation is smooth if I perform the same action when tapping. Gist: gist.github.com/alpennec/f9d...
I filed a feedback FB23661327 and posted on Apple Developer forums: developer.apple.com/forums/threa...
An Apple Developer Tools Engineer confirmed we can't use a string catalog for this use case and we must use a .stringsdict file instead 🫡
The solution is to translate the TypeDisplayRepresentation name in a .stringsdict file. For a DeleteIntent, it seems this is used instead of the @.Parameter title. See the "Accelerating app interactions with App Intents" sample code from Apple: developer.apple.com/documentatio...
The solution is to translate the TypeDisplayRepresentation name in a .stringsdict file. For a DeleteIntent, it seems this is used instead of the @.Parameter title. See the "Accelerating app interactions with App Intents" sample code from Apple: developer.apple.com/documentatio...
When conforming to DeleteIntent, is there a way to show the plural form of the entity ("Books" vs "Book") in the Shortcuts app? DeleteIntent requires an AppEntity array, but it ignores the parameter title and instead uses the entity typeDisplayRepresentation (which is singular).
@mgorbach.name I posted my question and use case on Apple Forums here: developer.apple.com/forums/threa... And I also filed a feedback to get some guidances: FB23453134 Thank you!
The CSSearchableItem(appEntity:) method is marked as iOS 18+ but my app crashes when it launches on iOS 18+, even if I wrap the lines in #if available(iOS 26, *). It works fine on iOS 26+. Any idea if that can be solved and how? Documentation: developer.apple.com/documentatio... cc @mgorbach.name
Apple, can you please explain why running Shortcuts & App Intents on an iOS 18 simulator works fine but fails miserably on iOS 26.4+ and iOS 27? Can you please fix that for this release cycle? Feedback: FB23342158 Project is a sample code from Apple: developer.apple.com/documentatio...
Fixed 😮💨 I had to change the extension minimum deployment from iOS 26 to iOS 18.6 (it was not set automatically when I added the widget extension). But then I had other issues about invalid widget kinds that were not in the scheme's Environment Variables... Cleaning solved it.
I'm trying to run the basic widgets extension template from Xcode on a physical device (iOS 18.7.9) but it fails. I tried rebooting my device twice. I tried using Xcode 26.6 too, same issue. I don't know what to do to get it work...
Why can I only search for an indexed item in Spotlight using the title or the displayName on iOS but I can search by any indexed attribute on macOS? 🤔 Is this a bug or expected? I also posted on Apple developers forums with a feedback (FB23317556): developer.apple.com/forums/threa...
So it seems if there is a confirmation action associated with the cancellation action, we should put the cancellation at the leading edge (what iOS has been doing for ages). But if it’s just a close button in the toolbar, we should put it at the trailing edge, like what Apple seems to be doing.
But some people on X pointed that Apple doesn’t respect this guideline. Or maybe a “Close” behaves differently than a “Cancel”? 🤔 What’s Apple stake on this @mikestern.bsky.social? Could you please specify in the Apple HIG if this is valid for both Close and Cancel? Thanks! x.com/vistar941/st...
Apple updated its Human Interface Guidelines for Sheets on March 24, 2026 to add guidance for button placement in the toolbar. "In iOS & iPadOS, the Cancel button belongs on the leading edge of the top toolbar." Time to update my apps 🙂 Documentation: developer.apple.com/design/human...
But some people on X pointed that Apple doesn’t respect this guideline. Or maybe a “Close” behaves differently than a “Cancel”? 🤔 What’s Apple stake on this @mikestern.bsky.social? Could you please specify in the Apple HIG if this is valid for both Close and Cancel? Thanks! x.com/vistar941/st...
In SwiftUI (UIKit too?), there is the semantic cancellationAction ToolbarItemPlacement. “In iOS, iPadOS, tvOS, and watchOS, the system places cancellationAction items on the leading edge of the navigation bar.” Maybe there should be a closeAction too? developer.apple.com/documentatio...
@mikestern.bsky.social hey Mike. Is there a way to see all changes made to Apple Human Interface Guidelines instead of having to check each page to see the log? Thanks!
The solution is to use .compositingGroup() on the SwiftUI Menu 🎉 Thanks to @saschagordner.de who pointed me to a StackOverflow answer about the exact same issue: stackoverflow.com/a/79884587 Documentation about compositingGroup: shorturl.at/btdM6
Any idea how to fix this Liquid Glass visual bug? In my app, I have a #SwiftUI Menu that presents an overlay over the whole view. But the Menu stays visible for a short period of time until it goes below the overlay 🫤 Works fine on iOS 17/18. Code: gist.github.com/alpennec/31e...