Announcing the Coinbase Wallet Mobile SDK for web3 mobile builders

TLDR: We’ve launched a new open source Coinbase Wallet Mobile SDK, designed from scratch for web3 developers building native mobile applications. The Mobile SDK is the easiest and fastest way to integrate Coinbase Wallet into your mobile web3 dapps enabling you to reach millions of Coinbase users. The Mobile SDK is already live with multiple mobile dapps including dYdX, DeBank, Showtime, and Tribes.

By Harry Tormey, Jungho Bang

Product

, October 5, 2022

Announcing the Coinbase Wallet Mobile SDK for web3 mobile builders

Since 2021, there has been a surge of interest in web3 and dapps. While most dapps today are built and deployed on the web, a growing number of dapps, like Showtime and dYdX, have launched native mobile applications. Many established web2 companies with native mobile apps serving hundreds of millions of users including Meta, Twitter and Reddit are also starting to add web3 functionality to their products.

As web3 scales to billions of users we expect mobile to play an increasingly important role. The Coinbase Wallet Mobile SDK offers a mobile optimized way for developers to connect Coinbase Wallet in a faster, more reliable and more decentralized way than alternatives.

This SDK enables you to build faster, more reliable and more decentralized native mobile web3 dapps. This will be available for all major mobile development platforms, so you can install the SDK from the package manager of your choice. Currently, it’s available via Cocoapods (iOS), Swift Package Manager (iOS), Maven (Android), NPM (React Native) and  Pub.dev (Flutter).

Why a Mobile SDK?

It’s easier: Previously, mobile engineers who wanted to integrate with Coinbase Wallet faced a complex multi-step deep linking process that also required managing a web application. With the new mobile SDK,  we have simplified and improved this process. It also doesn’t require the engineer in question to write a web application. 

“Integrating with the Coinbase Wallet Mobile SDK was easy, fast and allowed us to connect on mobile without a third party bridge.” - DeBank Team

It’s decentralized and more reliable: Many existing app-wallet communication solutions rely on relay servers to deliver messages between client and wallet, creating a dependency on an external service. 

Existing app-wallet communication systems create an external dependency via a bridge or relay server

Existing app-wallet communication systems create an external dependency via a bridge or relay server

Coinbase Wallet Mobile SDK improves the existing wallet communication methods by  allowing mobile applications to communicate directly with Coinbase Wallet, removing the need for a relay server. This is inherently faster, more reliable and decentralized because it requires fewer entities in delivering messages between you, the end user, and the dapp you are using. 

image8

The Coinbase Wallet Mobile SDK creates a direct channel between your application and a user's wallet, removing the need for an intermediary bridge or relay server. 

It’s more secure: Our protocol uses deep links to provide direct communication between peers. We’ve implemented two major enhancements to deep link handling to ensure maximum security: end-to-end encryption with secure key exchange and decentralized identity verification using the well-known URI standard for universal links. 

The SDK provides a complete implementation of cryptographic operations out of the box, built with Apple CryptoKit for iOS, Google Tink and androidx.security for Android.

Wallet Mobile SDK leverages universal links, so you don’t have to supply credentials or rely on a centralized repository to use this SDK with your application. It leverages Universal links to avoid URL scheme hijacking by leveraging the data configured for universal links by native mobile developers to verify the authenticity of peers.

“With Coinbase managing keys and encryption, the Tribes team can focus on inventing consumer-grade web3 social experiences rather than re-inventing the sign-in wheel." - Tribes Team

It’s more efficient: Current web-based solutions allow for single request handling for mobile dapps. This new update offers the ability to process batch requests, i.e. send multiple transactions in one payload, which offers huge UX improvement by reducing the number of switches between app and wallet. 

“We want to make our user experience as pleasant and seamless as possible so partnering with a large ecosystem player like Coinbase is always exciting. We hope this makes lives easier for Coinbase Wallet users and improves their trading experience!” - dYdX Team

It’s open source: All of the code for Coinbase Wallet Mobile SDK is open source and available on GitHub. As a follow-up, we plan to publish the specification for the host Wallet implementation so that other wallet developers can adopt the protocol that powers this SDK. After that, we will be open sourcing our host implementation and publishing it as a reference.

How to get started

The Coinbase Wallet Mobile SDK GitHub repo contains example applications for various platforms, demonstrating how to integrate this SDK and perform common actions like signing transactions. Getting started is easy.

Coinbase Wallet Mobile SDK is available for iOS, Android, React Native and Flutter via: 

To learn more about Coinbase Wallet Mobile SDK, check out our developer documentation.

Coinbase logo

Take control of your money. Start your portfolio today and get crypto.

Sign up for a Coinbase account today and see what the world of decentralized finance can do for you.