Have been having an issue with MetaMask on mobile.
Currently having a dApp that runs on web, but on mobile there seems to always be some inconsistent outputs in asking for user signature. I have a simple marketplace where users buy NFTs. To buy an NFT, the user would have to approve the token usage, and then sign the transaction.
At times MetaMask sends the user directly to AppStore even though the user already has MM installed. Some other times, MM only prompts signature once and does not prompt the other.
Not sure what is causing this issue and whether or not there is a fix.
This is a deeplinks issue. You should be using the in-app browser on mobile. The mobile browsers don’t pass deeplinks correctly, this is why you need to use the in-app browser.
This link takes you to a thread where the Github issue is also shared.