82 lines
2.7 KiB
YAML
82 lines
2.7 KiB
YAML
name: NavidromePlayer
|
|
options:
|
|
bundleIdPrefix: ca.dallasgroot.navidromeplayer
|
|
deploymentTarget:
|
|
iOS: "17.0" # Adjusted to realistic 2026 targets
|
|
watchOS: "10.0"
|
|
xcodeVersion: "15.0" # Standard stable Xcode versioning
|
|
groupSortPosition: top
|
|
createIntermediateGroups: true
|
|
|
|
packages:
|
|
ZIPFoundation:
|
|
url: https://github.com/weichsel/ZIPFoundation
|
|
from: "0.9.19"
|
|
|
|
settings:
|
|
base:
|
|
SWIFT_VERSION: "5.9"
|
|
MARKETING_VERSION: "1.0.0"
|
|
CURRENT_PROJECT_VERSION: "1" # Always a string for safety
|
|
DEAD_CODE_STRIPPING: true
|
|
ENABLE_USER_SCRIPT_SANDBOXING: true
|
|
DEVELOPMENT_TEAM: E9C9AGS9K6
|
|
CODE_SIGN_STYLE: Manual # Recommended for CI/CD, or 'Automatic' for local Xcode use
|
|
|
|
targets:
|
|
# ─────────────────────────────────────
|
|
# iOS App
|
|
# ─────────────────────────────────────
|
|
NavidromePlayer:
|
|
type: application
|
|
platform: iOS
|
|
sources:
|
|
- path: iOS
|
|
- path: Shared
|
|
resources:
|
|
- path: iOS/Resources
|
|
settings:
|
|
base:
|
|
PRODUCT_BUNDLE_IDENTIFIER: ca.dallasgroot.navidromeplayer
|
|
INFOPLIST_FILE: iOS/Resources/Info.plist
|
|
CODE_SIGN_ENTITLEMENTS: iOS/Resources/NavidromePlayer.entitlements
|
|
ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
|
|
TARGETED_DEVICE_FAMILY: "1,2"
|
|
# Required for App Store:
|
|
ENABLE_BITCODE: NO
|
|
CODE_SIGN_IDENTITY: "Apple Distribution"
|
|
PROVISIONING_PROFILE_SPECIFIER: "NavidromePlayer_App_Store"
|
|
dependencies:
|
|
- target: NavidromeWatch
|
|
- package: ZIPFoundation
|
|
|
|
# ─────────────────────────────────────
|
|
# watchOS App
|
|
# ─────────────────────────────────────
|
|
NavidromeWatch:
|
|
type: application
|
|
platform: watchOS
|
|
sources:
|
|
- path: watchOS
|
|
- path: Shared
|
|
resources:
|
|
- path: watchOS/Resources
|
|
settings:
|
|
base:
|
|
# CRITICAL: The Watch bundle ID must be prefixed by the iOS bundle ID
|
|
PRODUCT_BUNDLE_IDENTIFIER: ca.dallasgroot.navidromeplayer.watchkitapp
|
|
INFOPLIST_FILE: watchOS/Resources/Info.plist
|
|
CODE_SIGN_ENTITLEMENTS: watchOS/Resources/NavidromeWatch.entitlements
|
|
ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
|
|
SKIP_INSTALL: false
|
|
CODE_SIGN_IDENTITY: "Apple Distribution"
|
|
PROVISIONING_PROFILE_SPECIFIER: "NavidromeWatch_App_Store"
|
|
|
|
schemes:
|
|
NavidromePlayer:
|
|
build:
|
|
targets:
|
|
NavidromePlayer: all
|
|
archive:
|
|
config: Release
|
|
# Ensure the archive action captures the iOS app (which includes the Watch app)
|