Set the build destination to Mac Catalyst, and the build will run properly. I filed a feedback (FB13904284) and shared this with Apple engineers during a WWDC24 lab session.
Post
Replies
Boosts
Views
Activity
@ps3zocker thanks for the detailed overview of the problem. I filed my own feedback (FB13902858) and referenced your blog post and feedback ids. Let's hope Apple gives us the option to opt-out of the new tab view behavior in iPadOS 18.
Yes, I added the user-defined setting to my target's build settings, re-built the app, and the intents now work on iPadOS 16.
The release notes of Xcode 15.3 has another workaround:
https://developer.apple.com/documentation/xcode-release-notes/xcode-15_3-release-notes
AppIntents may fail to execute when the target’s minimum deployment target is iOS 15.0 or earlier (123798206) (FB13664020)
Workaround: Add the ENABLE_APPINTENTS_DEPLOYMENT_AWARE_PROCESSING=NO build flag to your target(s)
I've written a blog post and video detailing this problem and the workaround:
https://youtu.be/OMqEhcguevM
https://labs.mixeffect.app/article/2024/05/psa-shortcut-actions-broken-xcode-15-4/
I'm seeing the same problem. Rebuild your project using Xcode 15.2, and AppIntents will work again. I filed a feedback with Apple, and I suggest you do the same. Reference this: FB13812174
Did you ever find a solution to the crashing bug? I'm seeing this to in the AVCam sample app when run on the Mac.
Getting this problem on Xcode 12 or Xcode 13 on an iPad mini running the GM of iOS 15. Reported as FB9641325.
==423==AddressSanitizer: libc interceptors initialized
==423==FindDynamicShadowStart, space_size = 0x00005b003fff
|| `[0x0002db020000, 0x0002d7ffffff]` || HighMem ||
|| `[0x0002db624000, 0x0002db01ffff]` || HighShadow ||
|| `[0x0002d0024000, 0x0002db623fff]` || ShadowGap ||
|| `[0x000280020000, 0x0002d0023fff]` || LowShadow ||
|| `[0x000000000000, 0x00028001ffff]` || LowMem ||
MemToShadow(shadow): 0x0002d0024000 0x0002da0247ff 0x0002db6e4800 0x0002db623fff
redzone=16
max_redzone=2048
quarantine_size_mb=16M
thread_local_quarantine_size_kb=64K
malloc_context_size=30
SHADOW_SCALE: 3
SHADOW_GRANULARITY: 8
SHADOW_OFFSET: 0x280020000
==423==ERROR: AddressSanitizer failed to allocate 0xffffffffff9fc000 (-6307840) bytes at address 2db624000 (errno: 22)
==423==ReserveShadowMemoryRange failed while trying to map 0xffffffffff9fc000 bytes. Perhaps you're using ulimit -v
dyld4 config: DYLD_LIBRARY_PATH=/usr/lib/system/introspection DYLD_INSERT_LIBRARIES=@executable_path/Frameworks/libclang_rt.asan_ios_dynamic.dylib:/Developer/usr/lib/libBacktraceRecording.dylib:/Developer/usr/lib/libMainThreadChecker.dylib:/Developer/Library/PrivateFrameworks/DTDDISupport.framework/libViewDebuggerSupport.dylib
My project is structured a little differently in that I have a Workspace in which there are two framework projects underneath the main project. See screenshot:
When I click on the Intents.intendefinition file and try to change its settings, they are changed for both entries (since the top-level one is a reference to the one in the embedded framework). If I remove the reference in the main project, the actions don't appear anymore in Shortcuts.
Figured it out. To get rid of the Show When Run toggle, you have to do two things:
1) Have a blank success response template.
2) In the handle method of the intent, add the object you want to return in the response object as follows:
let response = GetMacroIntentResponse(code: .success, userActivity: nil)
response.macro = macroDetails
return completion(response)
You could use a Geometry Reader to calculate the size of the view at runtime.
Look at the section Adapting to Different Screen Sizes
section here: https://developer.apple.com/design/human-interface-guidelines/ios/system-capabilities/widgets/
I am experiencing the same problem in my app. Any other workarounds other people have found without having to remove the constraints?