2023-12-25 20:26:50 -08:00
|
|
|
//
|
|
|
|
|
// Bundle.swift
|
|
|
|
|
// Meshtastic
|
|
|
|
|
//
|
|
|
|
|
// Created by Garth Vander Houwen on 12/25/23.
|
|
|
|
|
//
|
|
|
|
|
|
|
|
|
|
import Foundation
|
|
|
|
|
|
|
|
|
|
extension Bundle {
|
2024-05-29 16:40:07 -05:00
|
|
|
public var appName: String { getInfo("CFBundleName") }
|
|
|
|
|
public var displayName: String { getInfo("CFBundleDisplayName") }
|
|
|
|
|
public var language: String { getInfo("CFBundleDevelopmentRegion") }
|
|
|
|
|
public var identifier: String { getInfo("CFBundleIdentifier") }
|
|
|
|
|
public var copyright: String { getInfo("NSHumanReadableCopyright").replacingOccurrences(of: "\\\\n", with: "\n") }
|
|
|
|
|
|
|
|
|
|
public var appBuild: String { getInfo("CFBundleVersion") }
|
|
|
|
|
public var appVersionLong: String { getInfo("CFBundleShortVersionString") }
|
|
|
|
|
// public var appVersionShort: String { getInfo("CFBundleShortVersion") }
|
|
|
|
|
|
2023-12-25 20:26:50 -08:00
|
|
|
fileprivate func getInfo(_ str: String) -> String { infoDictionary?[str] as? String ?? "⚠️" }
|
2025-08-27 19:31:01 -07:00
|
|
|
|
|
|
|
|
public var isTestFlight: Bool {
|
|
|
|
|
return appStoreReceiptURL?.lastPathComponent == "sandboxReceipt"
|
|
|
|
|
}
|
2025-10-28 09:18:17 -04:00
|
|
|
|
|
|
|
|
public var isDebug: Bool {
|
|
|
|
|
#if DEBUG
|
|
|
|
|
return true
|
|
|
|
|
#else
|
|
|
|
|
return false
|
|
|
|
|
#endif
|
|
|
|
|
}
|
2023-12-25 20:26:50 -08:00
|
|
|
}
|