Files
yattee/Yattee/Core/AppIdentifiers.swift
Arkadiusz Fal 2a49a5db68 Use production CloudKit environment for Xcode builds
Development-signed builds now opt into the Production CloudKit
environment via com.apple.developer.icloud-container-environment,
driven by a CLOUDKIT_ENV build setting. A new Debug-CKDev configuration
and "Yattee (CloudKit Dev)" scheme switch to the Development
environment for schema work.

The DEV badge and banner in iCloud settings now reflect the actual
environment (YatteeCloudKitEnvironment Info.plist key) instead of
#if DEBUG, and the sync engine logs the environment at startup.
2026-10-23 21:47:34 +02:00

48 lines
1.3 KiB
Swift

import Foundation
/// Centralized app identifiers - single source of truth for all app-wide identifiers.
enum AppIdentifiers {
// MARK: - Base Identifier
static let bundleIdentifier = "stream.yattee.app"
// MARK: - iCloud
static var iCloudContainer: String {
"iCloud.\(bundleIdentifier)"
}
/// CloudKit environment this build is signed for ("Development" or "Production"),
/// from the `CLOUDKIT_ENV` build setting. Debug builds use Production unless
/// built with the Debug-CKDev configuration ("Yattee (CloudKit Dev)" scheme).
static var iCloudEnvironment: String {
Bundle.main.object(forInfoDictionaryKey: "YatteeCloudKitEnvironment") as? String ?? "Production"
}
static var isCloudKitDevelopmentEnvironment: Bool {
iCloudEnvironment == "Development"
}
// MARK: - Background Tasks
static var backgroundFeedRefresh: String {
"\(bundleIdentifier).feedRefresh"
}
// MARK: - User Activities (Handoff)
static var handoffActivityType: String {
"\(bundleIdentifier).activity"
}
// MARK: - URL Sessions
static let downloadSession = "stream.yattee.downloads"
// MARK: - Logging
static var logSubsystem: String {
bundleIdentifier
}
}