wallet_switchEthereumChain
and EIP-3085 wallet_addEthereumChain
requests for switching networks.
For apps supporting multiple networks, Coinbase Wallet SDK only needs 1 rpcUrl — the rpcUrl of the chain the app wishes to default users to.
If Wallet SDK receives either a wallet_switchEthereumChain
or wallet_addEthereumChain
request for a whitelisted network then it switches the user to that network after asking approval from the user.
Coinbase Wallet clients handle wallet_addEthereumChain
requests for non-whitelisted networks (for example, a network such as Harmony One
which is not currently supported by clients by default).
An app can determine if a network is whitelisted or not by sending a wallet_switchEthereumChain
request for that network. If error code 4092 is returned, then the network is not supported by default by the client wallet.
wallet_switchEthereumChain
, determine if the network is supported by the wallet based on the error code, and follow with a wallet_addEthereumChain
request if the network is not supported. Here’s an example: