我正在写一个iPhone应用程序。它已经发布,但我想添加一个功能,其版本号显示。
我不希望对我发布的每个版本都手动执行此操作……
objective-C中有办法找出我的应用的版本吗?
我正在写一个iPhone应用程序。它已经发布,但我想添加一个功能,其版本号显示。
我不希望对我发布的每个版本都手动执行此操作……
objective-C中有办法找出我的应用的版本吗?
当前回答
// Syncs with App Store and Xcode Project Settings Input
NSString *appVersion = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"];
其他回答
// Syncs with App Store and Xcode Project Settings Input
NSString *appVersion = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"];
func getAppVersion() -> String {
let dictionary = Bundle.main.infoDictionary!
let versionValue = dictionary["CFBundleShortVersionString"] ?? "0"
let buildValue = dictionary["CFBundleVersion"] ?? "0"
return "\(versionValue) (build \(buildValue))"
}
基于@rajat chauhan的回答,没有强制转换为字符串。
阅读信息。你的应用程序的plist文件,并获得值的关键CFBundleShortVersionString。阅读信息。plist会给你一个NSDictionary对象
正如我在这里描述的,我使用一个脚本来用我当前的Subversion版本号重写头文件。修订号存储在kRevisionNumber常量中。然后,我可以使用类似于下面的东西访问版本和修订号:
[NSString stringWithFormat:@"Version %@ (%@)", [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"], kRevisionNumber]
这将创建一个格式为“Version 1.0(51)”的字符串。
您可以在plist.info中指定CFBundleShortVersionString字符串,并使用提供的API以编程方式读取该字符串。