What is Flutter?

Flutter was introduced by Google and it represents an open-source UI software development kit. This means you can use one programming language and one codebase to create two applications for different platforms (iOS and Android).

Getting started

Do the following steps to get started with this guide:

  1. Create a 46elks account.
  2. Get a virtual phone number.
  3. Download the project's source code.
  4. Set up Flutter.
    Install Flutter and choose if you want to use the Android setup or the iOS setup (you only need one).

Configure the app

Before we can make a phone call we need to configure our app.

  1. Open the file /lib/main.dart in the project's source code. You will see a code block looking like this:

  2. On row 3 and 4 change the username and password to your own API credentials for the 46elks API.

  3. On row 8 add your virtual phone number. (Be sure to add the number in the E.164 format)

Run the app

Now we are going to run our Flutter app on a virtual device. The steps differ depending on what setup you use. Select on of the alternatives below and follow the corresponding steps:

iOS (Mac terminal)
  1. Open the terminal and navigate to the project you downloaded: cd /path/to/flutter-project
  2. Open an iOS simulator: open -a Simulator
  3. Run your flutter application: flutter run
Android (Android studio)
  1. Open the Android Emulator.

  2. Run the sample.

Make a phone call

When the app opens up in your simulator from the previous step, you will see one field and a submit button.

  1. Enter the phone number you wish to call in the field. Remember to write the number in the E.164 format. For testing purposes you can enter your own number (not your virtual one - your real one).

  2. Click on the submit button.

After submitting, you will receive the status of your phone call from the 46elks API. The owner of the phone number you entered earlier (presumably yourself), will receive the phone call on their physical device and have an audio file played to them.

Be creative

Now that you have successfully made your first phone call via your Flutter app, let the creativity flow.

The use of an audio file was just an example of what you can do. To change this behaviour, let's have a look at the code again.


On row 10, you will see a property called play. This is a so called call action that is responsible for playing sounds. The 46elks API have several different call actions to play around with. Feel free to explore our documentation to see what else is possible.

Have fun developing your app with Flutter and 46elks.