代码之家  ›  专栏  ›  技术社区  ›  stigi

在Xcode构建期间预处理字符串文件

  •  4
  • stigi  · 技术社区  · 15 年前

    我的问题是:我有一个iPhone应用程序,我想让用户知道当前安装的版本。我通过在应用程序设置中显示它来实现这一点。现在每次我在信息列表我还需要在 Root.strings Settings.bundle

    2 回复  |  直到 15 年前
        1
  •  3
  •   tonklon    15 年前

    预处理器XCode在所有字符串文件上运行都是copystrings。它位于/Developer/Library/Xcode/Plug-ins中/CoreBuildTasks.xcplugin/Contents/Resources. ruby/en是一个简单的宏扩展,但它不支持任何扩展。

    您当然可以扩展该脚本,但是如果在运行脚本构建阶段运行一个不同的脚本,那么您就更容易了,正如您已经建议的那样。

        2
  •  -1
  •   fbartho    15 年前

    Info.plist 文件并提取 CFBundleVersion .strings .字符串 贴上类似的标签 "%@<CFBundleVersion format string>" = "Version: %@"; 然后你会得到一个快速的视觉指标,如果你的本地化程序已经完成了他们的工作,所有的语言。

    MyInfoView *infoView = /*...*/;
    NSString *version = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleVersion"];
    infoView.versionLabel.text = [NSString stringWithFormat:NSLocalizedString(@"%@<CFBundleVersion format string>",nil), version];