应用目标摘要

在Xcode 4中,我的目标摘要如下:

"版本"输入对应信息中的CFBundleShortVersionString.plist文件,"Build"输入对应于CFBundleVersion.

这两者有什么区别?我在网上看到很多人都想为这两个方面赋予同样的价值,我怀疑这是为了向后兼容.

我有两个问题:

1) 如果我从零开始,那么对应用程序进行版本控制的最佳实践是什么?

2) 在我之前发布的所有应用程序中,我只使用了CFBundleVersion个.为了不打乱升级过程,我应该继续以我之前的方式增加CFBundleVersion,还是可以切换到"正确的方式",假设存在一种方式?

推荐答案

苹果文档"Information Property List Key Reference"表示CFBundleShortVersionString代表发布版本,而CFBundleVersion代表任何版本,无论发布与否.此外,CFBundleShortVersionString可以本地化,尽管我不知道你为什么想本地化,因为他们说它应该是"由三个周期分隔的整数组成的字符串".对于发布版本,将这两个数字保持一致是合理的.对于开发构建,您可能会在CFBundleVersion上添加其他内容,可能是另一个点和整数.

Objective-c相关问答推荐

iPhone SDK 网络连接检测

如何测试 NSCFBolean 值?

检测时间格式是 12 小时还是 24 小时格式

如何更改图像中的特定 colored颜色 ?

在 iOS8 上,以横向模式显示我的应用程序会隐藏状态栏,但在 iOS 7 上,状态栏会同时显示在两个方向上

将长按手势和拖动手势结合在一起

NSManagedObjectContext performBlockAndWait:不在后台线程上执行?

主队列上的 dispatch_sync 在单元测试中挂起

UITableView - Select 了哪一行?

MKMapView MKPointAnnotation 点击​​事件

Objective-C 中是否有一些文字字典或数组语法?

iOS 崩溃日志(log)中的异常类型

带有块的 Objective-C 延迟动作

如何推送两个视图控制器但只为第二个设置动画过渡?

Core Data使用原始数据类型的标量属性复选框

在 Objective-C 中_和touch之间的区别

-fembed-bitcode 在 6.0 之前的 iOS 版本上不受支持

如何在今天午夜获取 NSDate 对象?

如何在不管理 UDID 和重新编译的情况下无线分发 ios 应用程序

Xcode 的不完整实现警告