【问题标题】:Use Bundle Identifier instead of Product Bundle Identifier with Xcode 7在 Xcode 7 中使用 Bundle Identifier 而不是 Product Bundle Identifier
【发布时间】:2015-10-14 10:08:21
【问题描述】:

升级到 Xcode 7 后,我注意到 CFBundleIdentifier 已开始指向 Build Settings/Packaging 中的 Product Bundle Identifier,而不是 Info.Plist 中的 Bundle Identifier。 有什么办法可以改回来吗?或者它是否可以简单地指向 Bundle Identifier,即在 Product Bundle Identifier 字段中写入 $(BUNDLE_IDENTIFIER)?

【问题讨论】:

    标签: ios xcode


    【解决方案1】:

    您应该在 Info.plist 中保留 $(PRODUCT_BUNDLE_IDENTIFIER),并在 Build Settings > Product Bundle Identifier 中将您的产品捆绑标识符设置为 com.mydomain.myappname 之类的值。

    来自 Xcode 7.0 发行说明:

    新的构建设置产品捆绑标识符 (PRODUCT_BUNDLE_IDENTIFIER) 是为目标设置捆绑标识符的推荐位置。目标的 Info.plist 应配置为使用此构建设置,方法是在 CFBundleIdentifier 键的值中将其引用为 $(PRODUCT_BUNDLE_IDENTIFIER)。

    当您在问题导航器中接受“升级到推荐设置”项目现代化时,Xcode 会为您提供配置,除非您的目标预处理其 Info.plist 文件。在这种情况下,您将需要手动配置此设置。此更改向后兼容旧版本的 Xcode。

    如果您的目标预处理其 Info.plist 文件,则需要进行此更改才能使某些功能(例如按需资源)正常工作。 (20887827)

    【讨论】:

    • 这是现在推荐的方式。另外:如果您决定在 Info.plist 中继续使用 CFBundleIdentifier 的值中的动态值,请准备好遇到构建问题。
    • 这里没有引起注意,导致很多配置问题,因为我的 CFBundleIdentifier 有一个动态附加的调试后缀。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-20
    • 2020-10-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多