首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何获得当前在Xcode中运行的目标的名称?

如何获得当前在Xcode中运行的目标的名称?
EN

Stack Overflow用户
提问于 2016-04-21 02:41:13
回答 6查看 12.6K关注 0票数 15

我有一个包含多个目标的Xcode项目。假设目标名称是AppFreeVersionAppPaidVersion。它们共享相同的代码基,但我想实现一些只针对其中一个目标的逻辑。

在不修改方案或构建设置的情况下,是否有方法获取当前目标名称的字符串?给定在这个问题上的解决方案要求我在构建设置中传递一个环境变量,这是我不想做的。

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2016-04-21 02:58:43

在您的${TARGET_NAME}中添加info.plist如何?

我猜你已经知道怎么得到它了

Obj

代码语言:javascript
复制
[[NSBundle mainBundle] objectForInfoDictionaryKey:key_name];

斯威夫特

代码语言:javascript
复制
let targetName = NSBundle.mainBundle().infoDictionary?[key_name] as String
票数 10
EN

Stack Overflow用户

发布于 2017-04-09 12:03:18

Swift 3.0解决方案。

代码语言:javascript
复制
func getTargetName() -> String {
    return Bundle.main.infoDictionary?["CFBundleName"] as! String
}
票数 8
EN

Stack Overflow用户

发布于 2020-12-01 14:44:04

Niko接受的答案仍在为我编写Xcode 12.2和iOS 14.2

下面是一个屏幕截图,以更好地说明在Info.plist中需要做什么

您需要对每个目标的相应Info.plist执行此操作

您甚至不需要使用$(TARGET_NAME)作为值,您可以给出您自己的自定义唯一值,并检查这些值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36758639

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档