Using info.plist for storing target-specific values for a multi-target app
I have a multi-开发者_运维问答target iPhone app which currently includes a header file with constant definitions that are conditionally included at build time depending on which target is being built.
However, I was wondering if it might be better to instead include this information in the info.plist for the build, as this generally holds target-specific meta, so logically seems more appropriate.
Therefore, my questions are:
- Is it acceptable to include custom (non-Apple defined) keys in the info.plist file?
- Is this a suitable place to include meta for the app which differ between targets?
It is acceptable and suitable.
The Info.plist file is preprocessed (must be enabled in project settings by setting Packaging / Preprocess Info.plist File to Yes) by the C pre-processor, so you can have variables (in the form of ${VARIABLE_NAME}
). These variables can be defined in the User Defined
section in Xcode's target info, making it very easy to switch their value from one target to another.
精彩评论