WalletConnect connects mobile & web applications to supported mobile wallets. The WalletConnect session is started by scanning a QR code (desktop) or by clicking an application deep link (mobile).

Once installed, you can simply get verified address from wallet.


    /// Create a connector
    var connector = WalletConnector(
        const AppInfo(name: "Mobile App", url: ""));
    /// create wallet need open 
    var rainbowMe = const Wallet(universalLink: '');
    /// Get address
    var address = await connector.publicAddress(wallet: rainbowMe).catchError((onError) {
      throw onError;

Currently, package already have Wallet.metamask, Wallet.trustWallet and Wallet.rainbowMe constants.

    /// package open Metamask by default
    var address = await connector.publicAddress().catchError((onError) {
        throw onError;

If you want open wallet by your self, use initSession and get uri

    connector.initSession((uri) {
        // use session uri and connect to wallet by your way