You can find some of our troubleshooting guides below when using AppKit. If you encounter another issue, you report us new issue on GitHub.

If you have a use case where you need to open AppKit Web SDK inside your mobile app’s in-app browser, you need to handle deep links and Universal Links properly. By default, mobile operating systems restrict how these links work in in-app browsers.

To enable wallet connections via deep links, you must explicitly configure your in-app browser to intercept and handle these links. The code examples below show how to properly handle deep links for popular wallet apps like MetaMask and Trust Wallet across different mobile platforms and frameworks.

import React from 'react'
import { Linking } from 'react-native'
import { WebView } from 'react-native-webview'

export default function MyWebView() {
  return (
    <WebView
      source={{ uri: 'https://yourdomain.com' }}
      onShouldStartLoadWithRequest={({ url }) => {
        if (url.startsWith('metamask://') || url.startsWith('trust://')) {
          Linking.openURL(url).catch(console.warn)
          return false
        }
        return true
      }}
    />
  )
}