Mobile Dapp integration via Deep Linking
Direct connection
This integration offers a direct, in-context connection between mobile web dapps and the Coinbase Wallet, without reloading the dapp in the in-app browser.
This feature is currently in an experimental phase and may undergo changes to enhance its functionality and user experience.
How to enable the direct connection method
-
Update to the latest SDK Ensure your dapp uses the Coinbase Wallet SDK version 3.8.0 or later.
-
Enable feature in SDK initialization When initializing the Coinbase Wallet SDK, set
enableMobileWalletLink: true
. This activates the direct connection feature for mobile device users.
import CoinbaseWalletSDK from '@coinbase/wallet-sdk';
const wallet = new CoinbaseWalletSDK({
appName: "Your Dapp Name",
appLogoUrl: "Your Dapp Logo URL",
enableMobileWalletLink: true // enable direct connection
});
Dapp browser
To open the Coinbase Wallet mobile app to a specific dapp in the dapp browser tab, you can use a deep link. You can use a deep link from either a web or a native app.
Universal link
https://go.cb-w.com/dapp?cb_url=[YOUR_URL]
YOUR_URL
should be encoded with percent-encoding.
Example
To open https://nft.coinbase.com/@barmstrong?param1=hello¶m2=world
, it should be formatted:
https://go.cb-w.com/dapp?cb_url=https%3A%2F%2Fnft.coinbase.com%2F%40barmstrong%3Fparam1%3Dhello%26param2%3Dworld
Android-specific information
In order to open a custom scheme (for example, to switch back to your app), you may pass the optional parameter cb_callback
into the universal link.
Custom scheme callback is supported on version 26.8+.
https://go.cb-w.com/dapp?cb_url=[YOUR_URL]&cb_callback=[YOUR_CALLBACK_SCHEME]
(Optional) iOS-specific information
You may use a custom protocol instead of the universal link. This is helpful if users are running into the iOS bug that routes users to the App Store instead of directly to the app when it's already installed.
cbwallet://dapp?url=[YOUR_URL]