-1

How do you open a Bitcoin URL in a react native app? I am using React Native Linking to detect if there are any apps on the phone that can open a Bitcoin URL formatted according to BIP21. I have 3 apps installed that should handle it:

1) Coinbase 2) Breadwallet 3) Blockchain.info wallet

But it's not opening. Here's the code:

async _openWallet() {
  const coinURL = 'bitcoin:15bMc6sQTiQ5jSqoRX3JzatAbQqJaffqup';

  try {
    const supported = await Linking.canOpenURL(coinURL);
    if (supported) {
      Linking.openURL(coinURL);
    } else {
      console.log('Could not find a compatible wallet on this device.');
    }
  } catch (error) {
    console.log(error);
  }
}

supported keeps returning false, which causes "Could not find a compatible wallet..." to execute. The weird thing is if I click on a Bitcoin URL on any random website via the Chrome / Safari browser, I get a popup that asks me if I want to open the URL in one of the above apps. So only URLs on websites are opening, but not URLs from inside react native code.

Any ideas?

Jon Cursi
  • 3,301
  • 4
  • 27
  • 53

1 Answers1

0

Looks like every URI scheme you want to use at runtime must be defined up-front in Info.plist. Found the answer here: React Native: Linking API not discovering Uber app

Jon Cursi
  • 3,301
  • 4
  • 27
  • 53