iOS and Android

Build voice calling into native mobile applications. Embed native voice functionality to connect callers between devices and out to the carrier network.

Use Voice API to add voice calling to mobile applications

Voice Communications for Mobile Apps

Twilio Mobile Client lets you embed VoIP into your iOS & Android apps. The SDK manages the SIP signaling & media on the device through the Twilio cloud infrastructure.

Twilio Client puts your users' communication experience in the context of your application. Enabling you to bring the richness of voice conversation into a user interface built to augment it with nearly anything you can build.

Features


Twilio iOS & Android SDKs

Building blocks for creating more engaging mobile experiences.

Native SDKs

Build real‑time communications into your apps in a few minutes and a few lines of code. The SDKs seamlessly connect to Twilio's global infrastructure, giving you access to ubiquitous mobile & telephony communications.

App to Anything

Connect users between other SDK users, WebRTC & SIP endpoints, or any PSTN telephone number. Calls can be programmatically routed, conferenced, and recorded through an elegant REST API.

Global Low Latency

Connect & route calls anywhere in the world. Intelligent global media routing optimizes call quality everywhere in the world, intelligently determining how media is streamed between callers to minimize latency.

  • Computer with checkmark icon
    Hardware abstraction

    Built to be compatible with any configuration of device hardware.

  • Sound wave
    Audio Recording

    Record and store whole calls or specific interactions.

  • Mobile phone with user and heart symbol
    IDE‑friendly

    Integrates seamlessly into native & third party development environments.

  • Phone with video call
    Call Conferencing

    Conference together mobile, SIP, and PSTN callers.

  • Sound waveform with a close symbol
    Echo & AGC

    Echo cancellation and Automatic Gain Control built in.

  • Sound wave with checkmark
    Reliable audio quality

    Built on packet‑loss resistant, royalty‑free codecs.

  • Cell phone with voice wave
    Text-to-speech

    Speak text to callers in 26 languages and dialects.

  • Call forwarding
    Call queues

    Easily build intelligent on‑hold experiences for your client users.

Twilio SDKs


Ahoy World: iOS

The SDK is idiomatically tailored to behave just like the rest of your code.

 -(id)init
  {
    if ( self = [super init] )
  {
      NSURL* url = [NSURL URLWithString:@"http://companyfoo.com/auth.php"];
      NSURLResponse* response = nil;
      NSError* error = nil;
      NSData* data = [NSURLConnection sendSynchronousRequest:
        [NSURLRequest requestWithURL:url]
        returningResponse:&response
        error:&error];
  

    if (data)
    {
      NSHTTPURLResponse* httpResponse = (NSHTTPURLResponse*)response;
      if (httpResponse.statusCode == 200)
    {

        NSString* capabilityToken =
          [[[NSString alloc] initWithData:data
            encoding:NSUTF8StringEncoding]
          autorelease];

          _device = [[TCDevice alloc] initWithCapabilityToken:capabilityToken
    delegate:nil];

        }
      }
  

  -(IBAction)dialButtonPressed:(id)sender
  {
    HelloMonkeyAppDelegate* appDelegate = (HelloMonkeyAppDelegate*)[UIApplication sharedApplication].delegate;
    MonkeyPhone* phone = appDelegate.phone;
    [phone connect];

  }

init: Establish a secure connection to Twilio

The first step to initializing your call is retrieving a capability token from your server. This specifies permissions and functionality to be enabled.

Allocate & initialize the phone object

Next, allocate and initialize your TCDevice with the capabilities token just retrieved.

Start the call on button tap

The rest is magic. When your user interacts with your UI that makes or accepts a call, simply signal to [phone connect]

Solutions


Power your business with SDKs for iOS & Android

Leading companies build innovative solutions and trust Twilio with their customer experiences.

Sharing Economy

From house sharing to car sharing to nanny sharing - the collaborative consumption model connects people in entirely new ways, and builds new communities. Twilio Client helps those communities offer seamless in‑app connection between buyer and sharer, lowering friction, increasing stickiness, enabling in‑app negotiation, and ensuring conversion happens within the app ecosystem.

Person‑to‑Person

The rise of person to person (P2P) communities such as P2P lending has built communities requiring rich 1:1 connections. These require trusted, secure and ubiquitous communications. Embedding Twilio Client into these apps provides direct, free communication to the users which can be recorded, transcribed, archived and made searchable, ensuring compliance and stickiness.

Seller Marketplace

Whether connecting a buyer with an agent for a multi‑million dollar transaction, or a buyer with the seller of a handmade product for a handful of dollars, when the buyer calls, you want to be prepared. Let your agents/sellers take the call from the buyer within the app, and show them details about the buyer and what they're interested in, before they answer the call.

Customer Care

From banking, to insurance and more. Twilio client helps add in‑app communication to your existing consumer apps. Now users can make support or sales calls directly from within their app. This enables the user's authentication details and browsing history to be seamlessly passed to the answering customer care agent, providing a quicker, more efficient and more delightful experience.

We can't wait to see what you build

Free accounts and free advice. Everything you need to get started.