diff --git a/factors/config.md b/factors/config.md index cfaa40c..e6570a1 100644 --- a/factors/config.md +++ b/factors/config.md @@ -14,13 +14,18 @@ Apps sometimes store config as constants in the code. This is a violation of iOS A litmus test for whether an app has all config correctly factored out of the code is whether the codebase could be made open source at any moment, without compromising any credentials. -There are many ways on how you can inject config values during build time +There are many ways you can inject config values during build time - Configuration files (e.g. JSON or YAML files) - [cocoapods-keys](https://github.com/orta/cocoapods-keys) to better hide keys and apply them to your iOS app during build time - Custom built solution (e.g. using a build phase) -As deployments on the iOS platform are significantly slower than server deployments, you might want a way to quickly update config over the air (OTA) to react to issues fast. +There are also techniques for providing config values at run time: + +- Linking into the app with a custom url scheme +- Using a shared keychain and a separate app for configuration + +As deployments on the iOS platform are significantly slower than server deployments, you might want a way to quickly update config over the air (OTA) to react to issues fast. OTA config updates are powerful and allow you to instantly