# App start voice

An action block that starts an app activity for “voice interaction”, possibly without a visible UI.

The fiber will proceed immediately without pause.

An app activity is referred, either explicitly by its package and activity class, e.g. by using the Pick app activity button, or implicitly by an action and possibly data URI. Explicit start is seldom needed and should be avoided as it will stop working if the activity class is renamed. To implicitly start the “main” activity like the launcher does, specify only the package.

What data, actions and extras an activity support varies. Search for public documentation, or look at the app manifest for clues.

When including a file URI either as data URI or `"android.intent.extra.STREAM"` extra, ensure to enable the appropriate Grant flags otherwise it may be inaccessible to the app.

Note! If this block cause a `ActivityNotFoundException`, `SecurityException` or otherwise fail it’s likely because the activity isn’t exported, it’s been temporarily or permanently disabled, it’s secured by a permission to prevent third-party apps from launching it, or may not support “voice interaction”.

Note! This feature requires Android 6+.

## Input arguments

- Package — package name of the app activity.
- Activity class — class name of the app activity.
- Action — action the activity should perform.
- Data URI — content URI the activity should handle.
- MIME type — type of data the Data URI is referring to. See MIME type.
- Category — action category, use an array for multiple categories, implicitly includes Voice.
- Extras — dictionary with extended data, inconvertible entries lacking a conversion type may be excluded.
- Flags — launch flags.