Files
pulse-mobile/project.yml
Daniil Klimov a07696bd55 fix: widgets use App Group shared UserDefaults instead of Keychain
- Widgets can't access app's Keychain (different sandbox)
- App writes data to shared UserDefaults (group.com.daniil.pulsehealth)
- Widgets read from shared UserDefaults — no API calls needed
- WidgetDataService: updates widget data + reloads timelines
- DashboardView: pushes habits/tasks data to widget after load
- HealthView: pushes health data to widget after load
- App Group capability added to both app and widget entitlements
- Widgets update every 15 minutes from cached data

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 14:47:26 +03:00

52 lines
1.4 KiB
YAML

name: PulseHealth
options:
bundleIdPrefix: com.daniil
deploymentTarget:
iOS: "17.0"
targets:
PulseHealth:
type: application
platform: iOS
sources: PulseHealth
entitlements:
path: PulseHealth/PulseHealth.entitlements
dependencies:
- target: PulseWidgetExtension
settings:
base:
PRODUCT_BUNDLE_IDENTIFIER: com.daniil.pulsehealth
SWIFT_VERSION: 5.9
INFOPLIST_FILE: PulseHealth/Info.plist
CODE_SIGN_STYLE: Automatic
CODE_SIGN_ENTITLEMENTS: PulseHealth/PulseHealth.entitlements
DEVELOPMENT_TEAM: V9AG8JTFLC
ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
capabilities:
BackgroundModes:
modes:
- processing
AppGroups:
groups:
- group.com.daniil.pulsehealth
PulseWidgetExtension:
type: app-extension
platform: iOS
sources: PulseWidget
entitlements:
path: PulseWidget/PulseWidget.entitlements
settings:
base:
PRODUCT_BUNDLE_IDENTIFIER: com.daniil.pulsehealth.widget
SWIFT_VERSION: 5.9
CODE_SIGN_STYLE: Automatic
DEVELOPMENT_TEAM: V9AG8JTFLC
GENERATE_INFOPLIST_FILE: YES
MARKETING_VERSION: "1.0"
CURRENT_PROJECT_VERSION: "1"
INFOPLIST_KEY_CFBundleDisplayName: Pulse Widget
capabilities:
AppGroups:
groups:
- group.com.daniil.pulsehealth