首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用Swift获取版本和内部版本信息

使用Swift获取版本和内部版本信息
EN

Stack Overflow用户
提问于 2014-07-01 09:34:33
回答 15查看 78.9K关注 0票数 106

我正在尝试访问主NSBundle,以检索versionbuild信息。问题是,我想在Swift中尝试一下,我知道如何在Objective-C中检索它:

代码语言:javascript
复制
text = [NSBundle.mainBundle.infoDictionary objectForKey:@"CFBundleVersion"];

然而,我不知道从哪里开始使用Swift,我试图用新的语法编写它,但没有成功。

EN

回答 15

Stack Overflow用户

回答已采纳

发布于 2014-07-01 09:38:52

Swift语法有什么问题?这似乎起作用了:

代码语言:javascript
复制
if let text = Bundle.main.infoDictionary?["CFBundleVersion"] as? String {
    print(text)
}
票数 177
EN

Stack Overflow用户

发布于 2015-01-27 00:05:44

Swift 3/4版

代码语言:javascript
复制
func version() -> String {
    let dictionary = Bundle.main.infoDictionary!
    let version = dictionary["CFBundleShortVersionString"] as! String
    let build = dictionary["CFBundleVersion"] as! String
    return "\(version) build \(build)"
} 

Swift 2.x版本

代码语言:javascript
复制
func version() -> String {
    let dictionary = NSBundle.mainBundle().infoDictionary!
    let version = dictionary["CFBundleShortVersionString"] as String
    let build = dictionary["CFBundleVersion"] as String
    return "\(version) build \(build)"
}

正如here所见。

票数 128
EN

Stack Overflow用户

发布于 2014-10-25 22:26:36

对于Xcode6的最终版本,请使用

代码语言:javascript
复制
NSBundle.mainBundle().infoDictionary?["CFBundleVersion"] as? String

"?“在这里,infoDictionary后面的字符很重要

票数 18
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24501288

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档