Rate this page:

Thanks for rating this page!

We are always striving to improve our documentation quality, and your feedback is valuable to us. How could this documentation serve you better?

Twilio Client Android Quickstart

In this tutorial, we will use the Twilio Client SDK for Android and TwiML to demonstrate how to make an outgoing call from a mobile app to a regular phone and receive an incoming call from a phone.

This guide assumes you have familiarity with Android and Java, and concepts like Activities (and their lifecycles), Listeners, and how to build a basic Android application.

The tutorial is two-fold: first, we'll get you up and running with a functional Twilio Client for Android demo application. Second, we'll walk through how the app works, explaining the core concepts and classes that you'll need to understand in order to customize it and eventually deploy your own Twilio Client powered apps.


  1. This tutorial assumes you are using Android Studio.

  2. You'll need your Twilio Account SID and Auth Token. You can find these in your Account Dashboard. If you don't have an account, you can sign up for a free trial account.

  3. In the example that follows, we'll setup a web application server on the public Internet to host the server code for generating a capability token and TwiML (more on this later). The Quickstart depends on a sample python app deployed to Heroku for this purpose, but you can switch this out later to use any backend language and hosting infrastructure that you prefer.

Download or check out the Quickstart project

The Twilio Client Android Quickstart exists in two parts: a sample Android app for the client side, and sample python code for the server. First, download (or git clone) each repository locally:

Now, let's get the server up and running first...

Next: Setting up your Server »

Need some help?

We all do sometimes; code is hard. Get help now from our support team, or lean on the wisdom of the crowd browsing the Twilio tag on Stack Overflow.