Alan Flutter Framework

Available on: Android iOS

The Alan Flutter plugin helps you to integrate your voice experience and Alan Studio script into your Flutter app.


The alan_voice package version 3.0.0 supports null safety. If your app does not use null safety yet, upgrade the Dart version to 2.12 or higher or use a previous version of the alan_voice package.

Integrating with Alan

To integrate a Flutter app with Alan:

  1. In the pubspec.yaml file of your Flutter project, add the Alan voice dependency:

        sdk: flutter
      alan_voice: 2.4.0
  2. Open the main.dart file and at the top of it, add the alan_voice package dependency:

    import 'package:alan_voice/alan_voice.dart';
  3. In the _MyHomePageState class, add the method for initializing the Alan button:

    class _MyHomePageState extends State<MyHomePage> {
      _MyHomePageState() {
        /// Initializing Alan with sample project id
          buttonAlign: AlanVoice.BUTTON_ALIGN_LEFT);
  4. In Alan Studio, go to Integrations, copy the value from the Alan SDK Key field and insert this value in the quotes.

    class _MyHomePageState extends State<MyHomePage> {
      _MyHomePageState() {
        /// Initializing Alan with sample project id
          buttonAlign: AlanVoice.BUTTON_ALIGN_LEFT);

That’s it. Now you can run the app, tap the Alan button and start interacting with Alan.

Specifying the Alan button parameters

You can specify the following parameters for the Alan button added to your app:






The Alan SDK key for a project in Alan Studio.


JSON object

The authentication or configuration data to be sent to the voice script. For details, see authData.



The Alan button position in the app. Use one of the two constants: BUTTON_ALIGN_LEFT or BUTTON_ALIGN_RIGHT.

Switching between logging levels

By default, Alan does not log its system events such as change of the Alan button state to the IDE console. If you want to see messages from Alan, switch to the all logging level:


To disable logs, either remove the line above or switch to the none logging level:



To troubleshoot problems you may have with your Flutter app, check the solutions below:

  • The minimum possible Android SDK version required by the Alan SDK is 21. If the version in your project is lower, you may encounter the following error: AndroidManifest.xml Error: uses-sdk:minSdkVersion 16 cannot be smaller than version 21 declared in library [:alan_voice]. Open the ./android/app/build.gradle file, under defaultConfig, locate minSdkVersion and change the version to 21.

  • Starting from version 3.0.0, the alan_voice package supports null safety. If you encounter the following error: Cannot run with sound null safety because dependencies don't support null safety, upgrade to the latest package version.

What’s next?

Upon integration, your app gets the in-app voice assistant that can be activated with the Alan button displayed on top of the app’s UI.

To build a full-fledged multimodal UX, you can use Alan’s SDK toolkit:


Client API methods

Enable communication between the client app and Alan and perform actions in the app.

Learn more


Alan handlers

Handle commands, understand the button state and capture events in the client app.

Learn more


Example apps

Find and explore examples of voice-enabled apps on the Alan AI GitHub repository.

View on GitHub