SeeTestAutomation - Entitlements
Please note that this tool is classified as a Legacy tool. We recommend transitioning to our updated solutions to maintain optimal performance and security in your workflows. For more information on this matter, please reach out to technical support .
Overview
Entitlements grant specific capabilities or security permissions to your iOS app.
Developers decide what entitlements to use. Each entitlement has a specific declaration of a key-value structure.
Chosen entitlements are mentioned in the provision profile used for signing the app during development.
As described in code sign - SeeTestAutomation re-signs applications and most-likely uses a different profile.
Apple page on entitlements
iCloud Document Storage
Key
com.apple.developer.ubiquity-container-identifiers
Value
$(TeamIdentifierPrefix)com.mycompany.myapplication
Includes bundle-ids this app can access documents created by them on iCloud.
You must not use a wildcard ("*
") character in the string for an iCloud container entitlement value
Configuring Keychain Sharing
Key
keychain-access-groups
Value
$(TeamIdentifierPrefix)com.mycompany.myapplication
App can restrict Keychain sharing to a set of app groups
Will change when signing with a wildcard ("*") profile - see Troubleshooting section below.
Enabling Data Protection
Stores files in an encrypted format on disk.
This can interfere with SeeTest working with the app
Entitlements Troubleshooting
Using the ios.entitlements.fix.keychain property
The studio has the ability to automatically add the "allow Keychain access" capability when designing an app that had this capability in the original signing (when the app was created).
To do so, add the following property to the app.property file: ios.entitlements.fix.keychain=true.
Follow the following link to learn how to add properties in the app.properties file.
Basic Instrumentation
There is an option to instrument your application with basic capabilities only (doesn't include features like Simulate Capture, Mock Authentication). This option is recommended only when experiencing problems with the default instrumentation.
To set Basic Instrumentation, add the following line to the app.properties file: ios.instrument.with.basic.frameworks=true
Or use keyle.
Override Application Entitlements (advance usage)
For advanced usage, you can import entitlements to your application during the installation process. This option is recommended only when experiencing problems with entitlements.
You must supply valid entitlements.plist file for your application.
To sign applications with custom entitlements.plist add this property to the app.properties file:
override.entitlements.file.path_<BundleID>=<Path_To_entitelments.plist>
Override Application Plugins Entitlements (advance usage)
To sign application plugins with custom entitlements.plist add this property to the app.properties file:
override.entitlements.file.path_<BundleID>_plugins=<Path_To_entitelments.plist>
For more information on that matter, please contact to support.