WalletConnect / Web3ModalFlutter

The Web3Modal for WalletConnect built using Flutter.
https://pub.dev/packages/web3modal_flutter
Apache License 2.0
27 stars 30 forks source link

Unable to send (personal_sign) requests to some wallet applications on Android #85

Closed kinggongzilla closed 3 months ago

kinggongzilla commented 4 months ago

Describe the bug I am using web3modal_flutter in my Flutter application. I am having issues with the following user actions:

  1. User connects with the walletconnect web3 modal
  2. After the user connects the app sends a "personal_sign" request
  3. This error is thrown upon trying to send the personal_signrequest: PlatformException (PlatformException(ACTIVITY_NOT_FOUND, No Activity found to handle intent { trust:// }, null, null))
  4. The request is not actuallysent, due to the error and user cannot sign it.

I am encountering this issue on Android with the following wallet applications:

I am NOT encountering this issue on:

Moreover I am NOT encountering this issue with any wallet on iOS, that I have tried so far. Including Trust Wallet and 1inch.

I have not tried other wallet apps so far.

Moreover, I am unsure if this error would also appear for requests other than personal_sign.

To Reproduce Steps to reproduce the behavior:

  1. Use Web3Modal to connect user with Trust Wallet (or 1inch)
  2. Send a personal_sign request

Expected behavior personal_sign request (and all other requests) are sent correctly to Trust Wallet, 1inch wallet (and others) on Android

Screenshots If applicable, add screenshots to help explain your problem.

Smartphone (please complete the following information):

Additional context I have tested with two separate Android devices and encountered exactly the same problem. I believe this affects all requests sent to the wallet, however I have only tried it with personal_sign

quetool commented 3 months ago

Hello @kinggongzilla, thanks for the report and sorry for the late response. This is not an issue related to our package. The error you are facing simply means that those wallets (Trust and 1inch) does not have an intent (in their Android app) set in place to handle our deep link. A proof of that is any other wallet capable of handling it. So this is an issue on Trust and 1Inch. Maybe they will fix it in following versions.

quetool commented 3 months ago

Hello @kinggongzilla, I just tested latest Android version from Trust (8.7.1) and everything is working fine. Do you mind checking if you have latest one?