setPermissions
Grant or deny app permissions during flow execution.
Partial support in Astra Scout
Works on Android and iOS. On a real iPhone, a mix of permission values is not supported, so permission dialogs may still need to be handled manually (for example with tapOn: Allow).
The setPermissions command configures permissions for an application. While the launchApp command performs this action by default, you can use setPermissions at other points in a flow, such as before a deeplink.
INFO
setPermissions is available on Android and iOS.
Astra Scout has no control over Chrome’s permissions.
Parameters
| Parameter | Description |
|---|---|
permissions | A map of permissions to set. The key is the permission name, and the value is either allow or deny. Use the all key to apply a state to all permissions. |
appId | (Optional) The ID of the app to target. Defaults to the app under test. |
All parameters can be set via a variable or a JavaScript expression.
Usage examples
The following examples demonstrate how to use the setPermissions command.
Grant all permissions
This example grants all permissions to the app under test.
- setPermissions:
permissions:
all: allowSet specific permissions for another app
This example sets the camera permission to allow and the notifications permission to deny for the app with the ID com.example.app.
- setPermissions:
appId: com.example.app
permissions:
camera: allow
notifications: denySet a permission from a variable
Permission values are interpolated, so you can drive them from a parameter or an environment variable and run the same Flow for both the granted and denied cases.
appId: com.example.app
env:
CAMERA_STATE: allow
---
- setPermissions:
permissions:
camera: ${CAMERA_STATE}Related content
Learn how to use permissions on iOS and Android apps on flows.
