如何使用 info.plist 文件中的代码值 xcode ios
How to use Code value in the info.plist file xcode ios
我想在 info.plist 文件中使用一些自定义常量来全局使用它
例如
<key>FacebookAppID</key>
<string>$(my_custom_constant)</string>
- 如何使这个常量?
- 如何通过选择调试和发布来区分它mode.e.g。 FacebookAppID 在调试模式下为 "abc",在发布模式下为 "xyz"。
您可以通过在构建设置中将变量作为 "User-Defined Setting" 添加到您的目标来创建变量。然后,您可以为每个构建配置将变量值设置为不同的值。
请参阅附件截图。您可以忽略我的 Beta Prod 和 Beta 测试配置,因为它们可能不适用于您的情况。
在 info.plist 中设置您的自定义变量,如下所示。我这里以"HockeyAppID"为例。
接下来,在 "User-Defined" 下的 Build Settings 中添加一个变量,用于您的案例中的 Debug 和 Release 配置,如下所示。在这里,我有我自己的四种不同的配置。
如你所知,运行时会根据scheme中的设置加载不同的配置值。
为了从 info.plist 访问用于调试/发布配置的 HockeyAppId,请执行以下操作。
enum InfoPlistKey {
static let hockeyappID = "HockeyAppID"
}
struct AppSettings {
private static var infoDict: [String: Any] {
if let dict = Bundle.main.infoDictionary {
return dict
} else {
fatalError("Info Plist file not found")
}
}
static let hockeyAppID = infoDict[InfoPlistKey.hockeyappID] as! String
}
现在,您可以从 Info.plist 访问 HockeyAppId 值,如 ,
let identifier = AppSettings.hockeyAppID
如有任何问题,请告诉我。
我想在 info.plist 文件中使用一些自定义常量来全局使用它 例如
<key>FacebookAppID</key>
<string>$(my_custom_constant)</string>
- 如何使这个常量?
- 如何通过选择调试和发布来区分它mode.e.g。 FacebookAppID 在调试模式下为 "abc",在发布模式下为 "xyz"。
您可以通过在构建设置中将变量作为 "User-Defined Setting" 添加到您的目标来创建变量。然后,您可以为每个构建配置将变量值设置为不同的值。
请参阅附件截图。您可以忽略我的 Beta Prod 和 Beta 测试配置,因为它们可能不适用于您的情况。
在 info.plist 中设置您的自定义变量,如下所示。我这里以"HockeyAppID"为例。
接下来,在 "User-Defined" 下的 Build Settings 中添加一个变量,用于您的案例中的 Debug 和 Release 配置,如下所示。在这里,我有我自己的四种不同的配置。
如你所知,运行时会根据scheme中的设置加载不同的配置值。 为了从 info.plist 访问用于调试/发布配置的 HockeyAppId,请执行以下操作。
enum InfoPlistKey {
static let hockeyappID = "HockeyAppID"
}
struct AppSettings {
private static var infoDict: [String: Any] {
if let dict = Bundle.main.infoDictionary {
return dict
} else {
fatalError("Info Plist file not found")
}
}
static let hockeyAppID = infoDict[InfoPlistKey.hockeyappID] as! String
}
现在,您可以从 Info.plist 访问 HockeyAppId 值,如 ,
let identifier = AppSettings.hockeyAppID
如有任何问题,请告诉我。