metamask-mobile icon indicating copy to clipboard operation
metamask-mobile copied to clipboard

Wallet Connect – send transaction approval not working on MetaMask after Android version 4.1.1

Open jayvs6341 opened this issue 3 years ago • 75 comments

Describe the bug I am working on android application to connect with MetaMask using WalletConnect protocol. The connection works fine. But eth_sendTransaction doesn't work. Metamask is not responding.

I tested several wallets. eth_sendTransaction is possible for TrustWallet, imToken and others.

Any help would be much appreciated.

Sample Code to check: https://github.com/pink-room/walletconnectkit-android/tree/main/sample Library I am using :- WalletConnectKit : https://github.com/pink-room/walletconnectkit-android https://github.com/pink-room/walletconnectkit-android/issues/13

Screenshots Metamask :- V4.2.2 and After ( Not working ) https://drive.google.com/file/d/1iwbsJSxlbKKE1nirc2VHhVu46FjU-m8N/view?usp=sharing

Metamask :- V4.1.1 ( Working ) https://drive.google.com/file/d/1dGs2GIqBEcqc40buZW3Voyy3mq0cMVDO/view?usp=sharing

To Reproduce Steps to reproduce the behaviour

  1. checkout and run Sample Code
  2. Try to connect by clicking the [Connect] button
  3. Try to eth_sendTransaction by clicking the [Transaction] button
  4. Metamask V4.2.2 and later no response, no behaviour

Expected behaviour Expect to see a send transaction request dialog in MetaMask

Smartphone (please complete the following information):

  • Device: [e.g. Galaxt M42 5G]
  • OS: [e.g. Android 12]
  • App Version [e.g. 4.2.2] - Settings > About MetaMask

jayvs6341 avatar May 10 '22 03:05 jayvs6341

Can you verify this in v5.1.0 or later?

gantunesr avatar May 10 '22 16:05 gantunesr

@jayvs6341 can you also please check your Android settings.

Open Android settings , search 'default' and select "Choose Default apps' > "Choose Default apps" > Opening Links > scroll down to MetaMask and tap it > Supported Web addresses > check if links are selected or "verified/trusted" by default (most importantly metamask.app.link). If they are not, then check them/it

Thanks.

andreahaku avatar May 10 '22 16:05 andreahaku

Can you verify this in v5.1.0 or later?

The latest version on Playstore is V5.0.1 and the send transaction issue is still there.

I downloaded the v5.1.0 from ( https://www.apkmirror.com/apk/consensys/metamask-buy-send-and-swap-crypto/) , but I am getting following issue while adding Polygon Mumbai Net. metamask

jayvs6341 avatar May 11 '22 02:05 jayvs6341

@jayvs6341 can you also please check your Android settings.

Open Android settings , search 'default' and select "Choose Default apps' > "Choose Default apps" > Opening Links > scroll down to MetaMask and tap it > Supported Web addresses > check if links are selected or "verified/trusted" by default (most importantly metamask.app.link). If they are not, then check them/it

Thanks.

Thanks for your reply. There is some issue with adding Polygon Testnet on Metamask. I will check with other network and post my response here asap.

jayvs6341 avatar May 11 '22 02:05 jayvs6341

Can you verify this in v5.1.0 or later?

@gantunesr Sorry to say, but it is not not working.

jayvs6341 avatar May 11 '22 04:05 jayvs6341

@jayvs6341 can you also please check your Android settings.

Open Android settings , search 'default' and select "Choose Default apps' > "Choose Default apps" > Opening Links > scroll down to MetaMask and tap it > Supported Web addresses > check if links are selected or "verified/trusted" by default (most importantly metamask.app.link). If they are not, then check them/it

Thanks.

@andreahaku Sorry to say, but this solution also dont work. Still the transaction dialog dont appear.

jayvs6341 avatar May 11 '22 04:05 jayvs6341

@gantunesr @andreahaku

Hello guys, this is gentle remainder about the issue i am still facing. I have following points you to be focused.

  1. Metamask v4.1.1 is working properly on transaction request approval thru wallet connect
  2. Transaction request approval is a critical functionality for our app to connect to metamask thru wallet connect
  3. Trust wallet is functioning normal for transaction request approval thru wallet connect

Hope you guys have a great weekend.

jayvs6341 avatar May 13 '22 11:05 jayvs6341

@gantunesr @andreahaku Hello Gustavo, Andrea This issue is blocking our dApp development to initate the transaction approval request from our dApp to metamask wallet. It's working on v4.1.1 but it did not work on v4.2.2 to v5.1.0 Is there any update that this issue will have resolution soon so that we can count on metamask solution for our wallet connect?

jayvs6341 avatar May 20 '22 10:05 jayvs6341

@gantunesr @andreahaku

I tested v5.1.1 , still has the same issue.

Transaction alert is not coming up.

jayvs6341 avatar May 24 '22 07:05 jayvs6341

Hey @jayvs6341, we're currently researching the root cause. Thanks for your patience.

gantunesr avatar Jun 08 '22 19:06 gantunesr

@gantunesr I have the same problem,personal_sign doesn't work. Metamask is not responding.

afterlifehy avatar Jun 09 '22 15:06 afterlifehy

Hey @jayvs6341, we're currently researching the root cause. Thanks for your patience.

Hey @gantunesr Thanks for your response.

Looking forward for your revert.

jayvs6341 avatar Jun 10 '22 09:06 jayvs6341

@gantunesr I have the same problem,personal_sign doesn't work. Metamask is not responding.

hi have found solution for this if u got solution please share with me.

Basavaraj367 avatar Jun 20 '22 07:06 Basavaraj367

@gantunesr I have the same problem,personal_sign doesn't work. Metamask is not responding.

hi have found solution for this if u got solution please share with me.

I haven't found solution, so I have to wait for matemask to update

afterlifehy avatar Jun 20 '22 15:06 afterlifehy

I get the same issue when sending a transaction request from a webpage using JavaScript via WalletConnect.

Sometimes it works. Sometimes, MetaMask shows up for a fraction of a second and immediately closes, without prompting for transaction confirmation. Sometimes MetaMask doesn't even pop up at all.

This is fucking pathetic.

php4fan avatar Jul 10 '22 10:07 php4fan

@tommasini @gantunesr I saw tommasini addressing to improve transaction editor component code #4654. Will the issue #4264 be resolved in July release?

We tested latest android release V5.3.0 and the wallet connect transaction approval is still not working.

The transaction approval has been failing to work since android release V4.1.1 in March. Please advise urgently.

vincentzmbizi avatar Jul 25 '22 06:07 vincentzmbizi

@gantunesr V5.4.0 was released. Is this issue, #4264 fixed?

vincentzmbizi avatar Aug 03 '22 20:08 vincentzmbizi

Nope, still not fixed. It can easily be tested here: https://opentarget.org/test/stupid/mm/wc/

php4fan avatar Aug 03 '22 20:08 php4fan

When I observe this connecting via WalletConnect from a webpage, this seems to happen systematically when one of these conditions are met: a. the current account doesn't have enough funds for the transaction, or b. the transaction is going to fail with an error thorwn from the contract

(which I think may be two facets of the same case, because in case 'b' gas estimation will fail and the transaction will be estimated as extremely expensive, so you will almost certainly not have enough funds if you are a normal person)

When I test it with enough funds and with a transaction that is not going to fail, it works.

Can anybody that is facing this from android apps confirm the same is true for you? @afterlifehy @jayvs6341

If you can confirm that, I think this is the same as #4646. After all, isn't MetaMask's end of the WalletConnect protocol exactly the same, whether at the other end is a native app or a javascript script in a browser?

php4fan avatar Aug 03 '22 21:08 php4fan

@gantunesr @tommasini #4264 is high priority bug and there is no update from MetaMask. This should not be the right response from ConsenSys. Any visibility you can share with the community?

vincentzmbizi avatar Aug 04 '22 10:08 vincentzmbizi

from ConsenSys.

Wow, so there's an actual company behind MetaMask!? I thought it was developed by a handful of enthusiasts in their very limited spare time. That's the kind of scenario form which one could expect this level of quality.

php4fan avatar Aug 04 '22 13:08 php4fan

MetaMask is from a giant company, ConsenSys. I have a very high expectation and respect of ConsenSys. WE need to raise the bar!

vincentzmbizi avatar Aug 04 '22 13:08 vincentzmbizi

MetaMask is from a giant company

Well, then there is no excuse, this is just pathetic. It's a half-baked product that can't be relied upon for a hobby project, let alone trusted with real money; it's totally unusable because of a plethora of bugs (in 10 minutes of use you stumble upon more bugs than you can report in one hour) and it's been so for at least months (that's how long I've used it, it's probably way longer or forever), and they haven't done anything about it, except, every time a new release comes out, ask bug reporters if the issue is still there.

I always wondered how on earth this managed to become the most popular wallet app and extension. If it's a giant company, I guess maybe at the beginning they did put real resources on it, and perhaps in its early stage for the limited functionality that it had it worked decently, either that or it had nothing to compete with. Then they just let it rot thinking it would maintain itself, or that the community would for free.

If they're not willing to put resources into maintaining it, they should officially abandon it, and pull it out from app and extension stores so they don't actively harm users.

I have a very high expectation and respect of ConsenSys

Well I certainly don't now.

WE need to raise the bar!

We need a bar.

php4fan avatar Aug 04 '22 14:08 php4fan

Do you test any other wallet better than MetaMask in wallet connect?

vincentzmbizi avatar Aug 04 '22 14:08 vincentzmbizi

Do you test any other wallet better than MetaMask in wallet connect?

I briefly tested TrustWallet, it's mostly garbage but it doesn't have this specific issue (I mean assuming that this is the same as issue 4646).

php4fan avatar Aug 04 '22 14:08 php4fan

which wallet is not garbage at the moment?

vincentzmbizi avatar Aug 04 '22 14:08 vincentzmbizi

Did you test coinbase wallet with walletlink (now called coinbase SDK) whether the transaction approval is working?

vincentzmbizi avatar Aug 04 '22 14:08 vincentzmbizi

Can you please do me a favour and go to https://example.walletconnect.org/ and try connecting to MM mobile and try an 'eth_sendTransaction' with the wallet on ETH mainnet. If it works, then please do using another network.

I tested and it works on Android (11 and 12) and iOS.

If possible using the latest version of the app (5.4.0) available on stores.

Wait for your tests. Thanks.

andreahaku avatar Aug 04 '22 14:08 andreahaku

I tested and it works on Android (11 and 12) and iOS.

@andreahaku Did you test with an account that doesn't have enough funds? Did you test with a transaction that is going to fail (throwing an error in the contract)?

php4fan avatar Aug 04 '22 14:08 php4fan

@andreahaku Also did you test on the BSC blockchain?

php4fan avatar Aug 04 '22 14:08 php4fan