SweeterSwift/Source/Bundle+Sweeter.swift

26 lines
777 B
Swift

//
// Bundle+Sweeter.swift
//
// Created by Yonat Sharon on 2019-02-08.
//
import Foundation
public extension Bundle {
/// Sweeter: app name with reasonable fallback to process name
var name: String {
return infoDictionary?["CFBundleDisplayName"] as? String
?? infoDictionary?["CFBundleName"] as? String
?? ProcessInfo.processInfo.processName
}
/// Sweeter: app name, version, and build number
var infoString: String {
let version = infoDictionary?["CFBundleShortVersionString"] as? String
let build = infoDictionary?["CFBundleVersion"] as? String
let nameAndVersion = [name, version].compact.joined(separator: " ")
return [nameAndVersion, build].compact.joined(separator: " #")
}
}