This feature is only relevant to native platforms.
Mobile Linking allows your wallet to automatically redirect back to the Dapp allowing for less user interactions and hence a better UX for your users.
When integrating a wallet with a mobile application, it’s essential to understand how they communicate. The process involves two main steps:
Developers should prefer Deep Linking over Universal Linking.
Universal Linking may redirect the user to a browser, which might not provide the intended user experience. Deep Linking ensures the user is taken directly to the app.
In some scenarios, wallets use redirect metadata provided in session proposals to open applications. This can cause unintended behavior, such as:
Redirecting to the wrong app when multiple apps share the same redirect metadata (e.g., a desktop and mobile version of the same Dapp). Opening an unrelated application if a QR code is scanned on a different device than where the wallet is installed.
To avoid this behavior, wallets should:
The connection and sign request flows are similar across platforms.
When the Dapp needs the user to sign something (like a transaction), a similar pattern occurs:
Since React Native leverages on native APIs, you must follow iOS and Android steps for each native platform
More information in official documentation: https://reactnative.dev/docs/linking?syntax=android#enabling-deep-links
Dapps developers must do the same for their own custom schemes if they want the wallet to be able to navigate back after a session approval or a sign request response
Before submitting your project to the Cloud Explorer you can test mobile linking in our sample Dapp:
Learn more about mobile linking in the Best Practices section.
In order to redirect to the Dapp, you’ll need to use Linking
from react-native
and call openURL()
method with the Dapp scheme that comes in the proposal metadata.
This feature is only relevant to native platforms.
Mobile Linking allows your wallet to automatically redirect back to the Dapp allowing for less user interactions and hence a better UX for your users.
When integrating a wallet with a mobile application, it’s essential to understand how they communicate. The process involves two main steps:
Developers should prefer Deep Linking over Universal Linking.
Universal Linking may redirect the user to a browser, which might not provide the intended user experience. Deep Linking ensures the user is taken directly to the app.
In some scenarios, wallets use redirect metadata provided in session proposals to open applications. This can cause unintended behavior, such as:
Redirecting to the wrong app when multiple apps share the same redirect metadata (e.g., a desktop and mobile version of the same Dapp). Opening an unrelated application if a QR code is scanned on a different device than where the wallet is installed.
To avoid this behavior, wallets should:
The connection and sign request flows are similar across platforms.
When the Dapp needs the user to sign something (like a transaction), a similar pattern occurs:
Since React Native leverages on native APIs, you must follow iOS and Android steps for each native platform
More information in official documentation: https://reactnative.dev/docs/linking?syntax=android#enabling-deep-links
Dapps developers must do the same for their own custom schemes if they want the wallet to be able to navigate back after a session approval or a sign request response
Before submitting your project to the Cloud Explorer you can test mobile linking in our sample Dapp:
Learn more about mobile linking in the Best Practices section.
In order to redirect to the Dapp, you’ll need to use Linking
from react-native
and call openURL()
method with the Dapp scheme that comes in the proposal metadata.