How to Build an Android WebRTC Video and Voice Chat App

pubnub share

Good News

Good News! We've launched an all new Chat Resource Center.

We recommend checking out our new Chat Resource Center, which includes overviews, tutorials, and design patterns for building and deploying mobile and web chat.

Take me to the Chat Documentation →

Since we wrote this post, we've made some changes to our what we do, and what we don't do with WebRTC. Learn more here.

Additionally, if you deploy this with using your unique Pub/Sub keys, Presence has to be enabled on those keys.


We wanted to extend the power of WebRTC to mobile, and in this tutorial, we show you how to build a native video and voice Android WebRTC application. Good news is, just released our new Android WebRTC signaling API, enabling you to build cross-platform web and mobile WebRTC applications.

And along with the API release, our tutorial Building an Android WebRTC Video Chat App on Real-time Weekly, a full code walkthrough on building a mobile chat app. In essence, we'll build Skype for Android.

PubNub-WebRTC-Overview

In specific, the tutorial covers:

  • Signaling to establish call connection
  • Building the mobile UI
  • Receiving incoming calls
  • Real-time 'buddy list' of available call recipients
  • In-app text messaging

Cross-platform WebRTC Video Chat

The Android WebRTC SDK is fully compatible with our JavaScript WebRTC SDK, making our Android app cross-platform. No additional technology is required for mobile-to-web and web-to-mobile video and voice communication.

WebRTC is already a flexible, lightweight API for web-based communication, so when combined with our new Android SDK, you have the makings for a powerful communication app for web and mobile users alike.

Head over to our web demo and send and receive calls to the Android application. Open it up in two browsers, and check out the real-time signaling in-action.