Mobile Deeplinking Possibilities

Hello,

I’m working on unity web3 plugins, I want to use MetaMask on mobile platforms, but the MetaMask docs didn’t enumerates all commands can we use with deeplinking.

Have you a docs who enumerates all commands ?

My goal is to send transation, sign messages …

Thanks for the replies.

Hello @youtpout, welcome to MetaMask community!

The docs we have available for what you require are these, hopefully they can help you out with what you’re trying to achieve.

And these, but SDK Unity integration will be coming soon.

2 Likes

Hello @youtpout !)

If you have specific problems with the implementation, you may open an issue on github or create a separate topic on the forum.

All general information provided by @Chinzilla above :wink:

3 Likes

Indeed. As snwlprd suggested above too, here’s the link to where you can open an issue on GitHub.

2 Likes

Hello , thanks for the reply.
When I checked the deeplinking generator I see some url parameters like :
dapp
send
transfer

I just want to know if they have a doc with all possible commands, maybe I need to read the source code to find these.

1 Like

I think you will be interested in the following information, use this on github:

/MetaMask/MetaMask-mobile/issues/3583

3 Likes

Hello, I check the commit, I think I found something in this file
MetaMask/MetaMask-mobile/blob/main/app/constants/deeplinks.ts

export enum ETH_ACTIONS {
  TRANSFER = 'transfer',
  APPROVE = 'approve',
}

export enum PROTOCOLS {
  HTTP = 'http',
  HTTPS = 'https',
  WC = 'wc',
  ETHEREUM = 'ethereum',
  DAPP = 'dapp',
  METAMASK = 'metamask',
}

export enum ACTIONS {
  DAPP = 'dapp',
  SEND = 'send',
  APPROVE = 'approve',
  PAYMENT = 'payment',
  FOCUS = 'focus',
  WC = 'wc',
  CONNECT = 'connect',
  EMPTY = '',
}

export const PREFIXES = {
  [ACTIONS.DAPP]: 'https://',
  [ACTIONS.SEND]: 'ethereum:',
  [ACTIONS.APPROVE]: 'ethereum:',
  [ACTIONS.FOCUS]: '',
  [ACTIONS.EMPTY]: '',
  METAMASK: 'metamask://',
};
2 Likes

Yeah finally I undesrtand, with deeplinking I can’t directly sign from an mobile app, I need to use walletconnect or a dapp to handle the interaction

2 Likes

That’s right, you need to use walletconnect.
For everything else, a deep link will do.

1 Like

Ok thanks because i saw a sdk that signs from unity, but i just watched an example video of this sdk, the sdk uses a dapp to sign the tx of MetaMask mobile and the dapp redirects to the game.
It can be a solution but it would require setting up a third-party application to generate the transactions to be signed and sent back to unity.
Otherwise I implement WalletConnect but only v1 is supported by MetaMask and support for this version ends March 2023

@youtpout we plan to support Wallet Connect v2 by the end of Q1 2023.

2 Likes

Ok thank you, I think I will use third party solution with deeplinking and implement wc2.0 in parrallel.

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.