【问题标题】:Xcode complaining about invalid character in the Bundle IdentifierXcode 抱怨 Bundle Identifier 中的无效字符
【发布时间】:2012-05-02 20:31:07
【问题描述】:

当我尝试在 Xcode 4.3.2 中构建 Mac OS 项目时,它会抛出以下警告:

第 4 列的捆绑标识符中的无效字符“$”。此字符串必须是统一类型标识符 (UTI),仅包含字母数字 (A-Z、a-z、0-9)、连字符 (-) 和句点 (.)字符。

这个项目的Bundle标识符是:

com.${COMPANY_NAME}.${PRODUCT_IDENTIFIER:rfc1034identifier}

在 plist 中指定的 Bundle Identifier 有什么问题吗?

【问题讨论】:

  • 你的应用名称符合这个吗?
  • 不确定。我该如何检查?
  • 您在 Xcode 中指定的应用名称是什么?
  • @MDT 由于保密协议,我无法在此处指定应用程序的名称。

标签: xcode macos cfbundleidentifier


【解决方案1】:

请注意,在变量名中使用_ 是完全有效的。

此警告发生在 plist 被解析并且${VARIABLES} 被替换为它们各自的值之后。因此,您需要检查这些变量的实际值,以确保它们不包含非法字符,例如 _

对于包标识符,您可以在 Xcode 的文件资源管理器(第一行)中单击您的项目名称,在 TARGET 部分下选择适当的目标,然后选择 General 选项卡。在 Identity/Bundle Identifier 下检查值。

【讨论】:

    【解决方案2】:

    打开您的 info.plist 文件并编辑当前显示“com.${COMPANY_NAME}.${PRODUCT_IDENTIFIER:rfc1034identifier}”的字符串。

    完全删除此字符串并手动输入您在 iOS 配置门户中创建的包 ID。

    【讨论】:

    • 这可能会解决问题,但如果我不想静态命名标识符怎么办?这也是一个 Mac OS 应用程序而不是 iOS 应用程序,因此在配置门户中指定了 bundle id。
    • 如果你想让它保持动态,那么让它工作的唯一方法是检查你的应用程序名称以及你的公司名称是否包含任何非法字符。
    • 在构建设置中,COMPANY_NAME 设置为 $COMPANY_NAME。我更新为使用没有非法字符的静态公司名称,但它仍然返回相同的警告。
    • 对应用名称执行相同操作,应该可以解决问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多