Post

Replies

Boosts

Views

Activity

Reply to WidgetBundle with ControlWidget does not work on iOS 17
The following seems to work on both iOS 17 and iOS 18 var body: some Widget { if #available(iOSApplicationExtension 18.0, *) { return iOS18Widgets } else { return iOS17Widgets } } @WidgetBundleBuilder var iOS17Widgets: some Widget { LiveActivityWidget() HomeScreenWidget() LockScreenWidget() } @available(iOSApplicationExtension 18.0, *) @WidgetBundleBuilder var iOS18Widgets: some Widget { LauncherControl() LiveActivityWidget() HomeScreenWidget() LockScreenWidget() }
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Jul ’24
Reply to LockedCameraCaptureExtension how to debug?
I dug around and found this in Console: [xpcservice<com.fifteenjugglers.solarwatch.SolarARCamera([osservice<com.apple.SpringBoard>:34])>{vt hash: 120182604}:2718] Terminating with context: <RBSTerminateContext| explanation:LockedContentServices deleting contents of extension data container reportType:None maxTerminationResistance:Interactive attrs:[ <RBSPreventLaunchLimitation| <RBSProcessPredicate <RBSProcessBundleIdentifierPredicate "com.fifteenjugglers.solarwatch.SolarARCamera">> allow:(null)> ]> Also it seems like the UI loads correctly if I remove the ARSCNView which renders the solar path from my camera UI.
Jul ’24
Reply to parallelizeBuildables flag can result in failed builds
After many attempts trying to figure out what was going on, I was able to resolve this by modernizing the project structure: Getting rid of the two single platform targets building the SolarKit framework in favor of splitting the SolarKit framework into two multi-platform frameworks which build on top of each other: CoreSolarKit for the basic functionality with watchOS support and ExtendedSolarKit which does not support watchOS. Converting the watch app target to a single watch app instead of old fashioned app+extension. Ensuring all target dependencies are explicit and that the app targets correctly bundle the correct non-system frameworks. I hope this helps somebody.
Sep ’22
Reply to iOS 18 new ControlWidgetButton custom image/icon/symbol not displayed
I think this is working as intended. The ControlWidget documentation states that only symbol images are supported. You can create your own custom symbols using the SF Symbols app on the Mac. David Smith has a great guide on how to do that. I'm not allowed to link to it but you can search for "DND 18: Creating Custom SF Symbols"
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Replies
Boosts
Views
Activity
Aug ’24
Reply to WidgetBundle with ControlWidget does not work on iOS 17
The following seems to work on both iOS 17 and iOS 18 var body: some Widget { if #available(iOSApplicationExtension 18.0, *) { return iOS18Widgets } else { return iOS17Widgets } } @WidgetBundleBuilder var iOS17Widgets: some Widget { LiveActivityWidget() HomeScreenWidget() LockScreenWidget() } @available(iOSApplicationExtension 18.0, *) @WidgetBundleBuilder var iOS18Widgets: some Widget { LauncherControl() LiveActivityWidget() HomeScreenWidget() LockScreenWidget() }
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Replies
Boosts
Views
Activity
Jul ’24
Reply to SwiftData ModelConfiguration with GroupContainer shows Data Access alert on every launch
For future reference, this is the same issue as https://developer.apple.com/forums/thread/759290?parentId=794962022#794962022
Replies
Boosts
Views
Activity
Jul ’24
Reply to LockedCameraCaptureExtension how to debug?
I dug around and found this in Console: [xpcservice<com.fifteenjugglers.solarwatch.SolarARCamera([osservice<com.apple.SpringBoard>:34])>{vt hash: 120182604}:2718] Terminating with context: <RBSTerminateContext| explanation:LockedContentServices deleting contents of extension data container reportType:None maxTerminationResistance:Interactive attrs:[ <RBSPreventLaunchLimitation| <RBSProcessPredicate <RBSProcessBundleIdentifierPredicate "com.fifteenjugglers.solarwatch.SolarARCamera">> allow:(null)> ]> Also it seems like the UI loads correctly if I remove the ARSCNView which renders the solar path from my camera UI.
Replies
Boosts
Views
Activity
Jul ’24
Reply to LockedCameraCaptureExtension how to debug?
Specifically, the crash reports on device say: Exception Type: EXC_CRASH (SIGKILL) Exception Codes: 0x0000000000000000, 0x0000000000000000 Termination Reason: RUNNINGBOARD 0 and the stack trace is all system code. It seems like my extension is getting terminated for some reason but I don't know why.
Replies
Boosts
Views
Activity
Jul ’24
Reply to parallelizeBuildables flag can result in failed builds
After many attempts trying to figure out what was going on, I was able to resolve this by modernizing the project structure: Getting rid of the two single platform targets building the SolarKit framework in favor of splitting the SolarKit framework into two multi-platform frameworks which build on top of each other: CoreSolarKit for the basic functionality with watchOS support and ExtendedSolarKit which does not support watchOS. Converting the watch app target to a single watch app instead of old fashioned app+extension. Ensuring all target dependencies are explicit and that the app targets correctly bundle the correct non-system frameworks. I hope this helps somebody.
Replies
Boosts
Views
Activity
Sep ’22
Reply to An internal error occurred while this artifact was being saved.
Same here. Tried setting build numbers manually and creating a brand new workflow. Nothing helped.
Replies
Boosts
Views
Activity
Jan ’22