Задать вопрос
  • Как открыть ссылку intent://?

    @al4i
    React Native Для перехода и открытия ссылки выбранным приложением надо динамически подставлять
    scheme выбранного банка. Список поддерживаемых банков тут
    https://qr.nspk.ru/proxyapp/c2bmembers.json

    import React, { useEffect } from 'react';
    import { Linking , Platform } from 'react-native';
    import SendIntentAndroid from 'react-native-send-intent';

    const Screen = ({link}) => {

    function changeQRLink(link, scheme, OS) {
    if (OS === 'android') {
    return link.replace("https://", "intent://").concat(`#Intent;scheme=${scheme};end`)
    } else {
    return link.replace("https://", `${scheme}://`)
    }
    }

    useEffect(() => {
    if (QRLink && Platform.OS === 'android') {
    SendIntentAndroid.openChromeIntent(changeQRLink(QRLink?.payRef, schema, Platform.OS))
    .then(() => { });
    }
    if (QRLink && Platform.OS === 'ios') {
    Linking.openURL(changeQRLink(QRLink?.payRef, schema, Platform.OS))
    }
    }, [QRLink])
    return (
    <>
    >
    )
    }

    Для android необходима ссылка формата
    intent://qr.nspk.ru/BD1000232GIIH?type=02&bank=100000000008&sum=10&cur=RUB&crc=5675&amp;crc=00C9#Intent;scheme=bank100000000004;end

    для ios такой
    bank100000000004://qr.nspk.ru/BD10001O9G6?type=02&bank=100000000008&sum=37&cur=RUB&crc=99A2
    Ответ написан
    Комментировать