我有精简版和完整版,希望它们能够使用不同的配置文件。
现在我需要在应用程序中查询应用程序名称中是否包含“lite”并加载相应的config-file 我还没找到怎么做。任何的想法 ? 或者通常有更好的方法吗?
提前致谢 的Heiko
答案 0 :(得分:5)
如果您想要放入Info.plist文件中的内容,请使用:
NSString * displayName = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleDisplayName"];
答案 1 :(得分:3)
尝试
[[NSProcessInfo processInfo] processName]
这将返回进程名称,通常是您的应用程序名称。
答案 2 :(得分:2)
你的应用程序在main.m中有一个main()(如果你使用了模板)。它传递了命令行参数,argv [0]应该是应用程序的完整路径,您可以解析它。您必须将其保存在全局变量中。
您还可以检查appDelegate中的launchOptions以查看它是否也存在。
答案 3 :(得分:0)
试试Swift:
if let appName = Bundle.main.infoDictionary?["CFBundleName"] as? String {
print("App Name - \(appName)")
}
如果您设置了显示名称
,请尝试此操作if let displayName = Bundle.main.infoDictionary?["CFBundleDisplayName"] as? String {
print("App Display Name - \(displayName)")
}
有用的技巧:
// Print bundle info dictionary to get complete details about app
print("Bundle.main.infoDictionary - \(Bundle.main.infoDictionary)")