Info.plist options
If you have an iOS or watchOS app (including iOS Mobile Flutter app), then the following additional Info.plist options are available.
APLLogging
To enable debug logging in the Appfigurate library early on, add the APLLogging
key to the Info.plist file(s). The APLLogging
key is optional.
Info.plist example
The default value of APLLogging
is false. You should not need to enable this to true unless you are having trouble integrating the library. It is best practice not to ship an app with this key set to true.
You can also call APLSetLogging
function to achieve the same result in code.
APLKeychainAccessibility
The APLKeychainAccessibility
key affects the access level of any configuration data stored in the keychain. Best practice is to use the most restrictive option that is compatible with your app and extension. The APLKeychainAccessibility
key is optional.
Value | Description |
---|---|
| Configuration can only be accessed while the device is unlocked. Will migrate to a new device when restored from an encrypted backup. |
| Configuration can only be accessed once the device has been unlocked after a restart. Will migrate to a new device when restored from an encrypted backup. |
| Configuration can always be accessed regardless of the lock state of the device. Will migrate to a new device when restored from an encrypted backup. |
| Configuration can only be accessed while the device is unlocked. |
| Configuration can only be accessed while the device is unlocked. |
| Configuration can only be accessed once the device has been unlocked after a restart. |
| Configuration can always be accessed regardless of the lock state of the device. |
Info.plist example
The default value of APLKeychainAccessibility
is Always
.
APLKeychainAccessGroup
The APLKeychainAccessGroup
key is optional.
iOS: In order to share configuration between an iOS app and an iOS app extension, Keychain Sharing must be enabled in both the app and app extension's Capabilities tabs.
watchOS: In order to share configuration between a watchOS app extension and a watchOS intent extension, Keychain Sharing must be enabled in both the app extension and intent extension's Capabilities tabs.
The APLKeychainAccessGroup
key must contain the same value as the Keychain Groups value.
Info.plist example
If the APLKeychainAccessGroup
key is not defined, then keychain access group functionality is not used. Do not specify an empty or otherwise invalid APLKeychainAccessGroup
value.
Key availability by platform
Key | iOS app | iOS app extension | watchOS app extension | watchOS intent extension |
---|---|---|---|---|
| ✓ | 1 | ✓ | 2 |
| ✓ | 1 | ✓ | 2 |
| ✓ | 1 | ✓ | 2 |
1=iOS app extensions automatically use the Info.plist
file from the containing app - you do not need to modify the iOS app extension's Info.plist
file.
2=watchOS intent extensions automatically use the Info.plist
file from the containing watch app extension - you do not need to modify the watchOS intent extension's Info.plist
file.
Standard Info.plist behaviour
CFBundleDisplayName
The standard key CFBundleDisplayName
(if specified) will be used to populate the name of the app in Appfigurate. If not specified, then the CFBundleName
value is used.
CFBundleShortVersionString
The standard key CFBundleShortVersionString
(if specified) will be used to populate the version of the app in Appfigurate. If not specified, then the CFBundleVersion
value is used.
CFBundleIcons
To populate the icon of the app in Appfigurate, the following search order is used: CFBundleIcons
,CFBundleIconFiles
,CFBundleIconFile
.
For iOS, the search order of app icon sizes is: 60x60@2x, 60x60@3x, 76x76@2x, 83.5x83.5@2x, 60x60@1x, 76x76@1x
For watchOS, the search order of app icon sizes is: 40x40@2x
Last updated