Swift:确定给定的包是否是一个应用程序?

Swift: Determining if a given bundle is an Application?

在Swift3,如果我有,说...

import Foundation
let aRandomBundle = Bundle(path:"/A/ValidPath/To/A/Bundle")

有没有一种方便的方法来确定 aRandomBundle 是应用程序、框架还是其他类型的包?

完成了这个,效果很好。

extension Bundle {
    func getType (outError: inout OSStatus) -> String? {
        if let info = self.infoDictionary {
        if let type = info["CFBundlePackageType"] {
            return String(describing: type)
        }
        else { outError = kLSNotAnApplicationErr; return nil }
        }
        else { outError = -10810; return nil }
    }
}