【问题标题】:Can I use the value for one key in Info.plist inside the value of another Info.plist key?我可以在另一个 Info.plist 键的值中使用 Info.plist 中一个键的值吗?
【发布时间】:2012-09-25 14:05:20
【问题描述】:

我想在另一个 Info.plist 键 (NSContactsUsageDescription) 的值中使用“捆绑显示名称”(CFBundleDisplayName) 的值。

我尝试了以下方法,但这不起作用:

${CFBundleDisplayName} must access your Address Book to input the scanned contact
information. ${CFBundleDisplayName} will never access your Address Book for marketing
or advertising purposes.

有人知道怎么做吗?

附录:该解决方案在本地化值时也应该有效。

【问题讨论】:

  • 您确定CFBundleDisplayName 已定义吗?它可以与CFBundleName 一起使用吗?
  • 您可以尝试改写您的描述以避免应用名称。据我所知,这是描述,而不是消息的标题。 “AppName 想访问您的联系人”将成为自动标题。之后,您可以添加“永远不会出于营销或广告目的访问您的联系人。”
  • 两者都已定义,但它们都不起作用。 ${PRODUCT_NAME} 有效,但由于名称更改,我明确要求 CFBundleDisplayName。
  • 也感谢您的第二条评论,DrummerB,这是个好主意。不过,我希望营销部门也同意,并允许我接受该措辞,否则营销部门会提出另一个没有应用名称的目的字符串。

标签: ios xcode xcode4


【解决方案1】:

使用${VARIABLE},您只能引用构建设置,而不能引用 Info.plist 中的其他值。尝试添加一个新的用户定义的构建设置并使用它。进入Build Settings标签,点击右下角的Add Build Setting

【讨论】:

  • 是的,这行得通。但是,我忘了提一下,我还需要本地化 NSContactsUsageDescription 的值。我对此有另一个 SO 问题,不想将两者混为一谈。但是,通过 InfoPlist.strings 添加构建设置将无法与本地化一起使用。
  • 有本地化的解决方案吗?
  • @ShebinKoshy 你可以localize the Info.plist file
猜你喜欢
  • 2018-10-13
  • 2021-09-24
  • 2022-06-30
  • 1970-01-01
  • 1970-01-01
  • 2020-12-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多