【问题标题】:How to get your own app version from xcode?如何从 xcode 获取自己的应用程序版本?
【发布时间】:2011-12-18 22:59:17
【问题描述】:

我想知道是否有一种方法可以在将您自己的应用程序版本放入 xCode 的“摘要”选项卡后,以代码形式获取它。一种方法似乎是在Info.plist 中搜索CFBundleVersion 键,但是还有其他更简单、更方便的方法吗?

【问题讨论】:

标签: iphone ios xcode ipad


【解决方案1】:
NSString *version = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleVersion"];

【讨论】:

    【解决方案2】:

    您可以在主包中找到它。我认为是这样的:

    [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"];
    

    【讨论】:

    • 是的,我刚刚发现一个博客 (pigtailsoft.com/blog/?p=35) 说明了这一点。不管怎么说,还是要谢谢你!将在 6 分钟内接受答复:)
    • 谢谢,但@"CFBundleVersion" 返回的是构建而不是版本。你应该得到这个对象:@"CFBundleShortVersionString"
    【解决方案3】:

    我通常使用内部版本号 (CFBundleVersion) 来跟踪内部版本的数量,以及用于营销目的的版本号 (CFBundleShortVersionString)。我使用运行脚本自动增加内部版本号,并在每个新版本之前手动更新版本号。因此,如果您想在代码中包含实际版本号而不是内部版本号,请使用:

    [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"]
    

    [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleShortVersionString"];
    

    这是为感兴趣的人增加内部版本号的运行脚本:

    #!/bin/bash
    
    buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "${PROJECT_DIR}/${INFOPLIST_FILE}")
    buildNumber=$(($buildNumber + 1))
    /usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "${PROJECT_DIR}/${INFOPLIST_FILE}"
    

    【讨论】:

      【解决方案4】:

      对于斯威夫特:

      Bundle.main.object(forInfoDictionaryKey: "CFBundleShortVersionString")
      

      【讨论】:

        猜你喜欢
        • 2013-01-12
        • 2018-04-21
        • 1970-01-01
        • 2018-01-12
        • 1970-01-01
        • 1970-01-01
        • 2014-01-29
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多