Blockchain Uygulamalarına Mobil Cüzdan ile Bağlanma

29.03.2022 | dakika okuma

Blockchain Uygulama Geliştirme yazı serisinde UI projesinde cüzdan olarak MetaMask'ı kullanmıştık. Uygulamayı kullanmak için tarayıcıda MetaMask'ın eklenti olarak kurulu olması gerekiyordu. MetaMask'ın aynı zamanda mobil uygulaması da var. Cüzdan ile iletişimi tarayıcı eklentisi yerine mobil ile sağlayabilir miyiz? Cevap evet sağlayabiliriz.

WalletConnect, cüzdanları blockchain uygulamalarına bağlamak için geliştirilmiş açık bir protokol. Blockchain uygulamalarımıza WalletConnect'i provider olarak ekliyoruz. Cüzdan ile bağlantı kur denildiğinde ekrana QR Code basıyor. Mobil uygulamamızdaki herhangi bir cüzdandan bu QR Code'u okuttuğumuzda Dapp ile mobil cüzdan arasında bağlantı kuruluyor.

Aşağıdaki komut ile provider'ı yüklüyoruz.

    npm i @walletconnect/web3-provider

Blockchain ağına bağlanmak için RPC URL belirtmemiz gerekli. RPC URL yerine standart haline gelmeye başlayan Infura da kullanılabilir. Yazı serimizde Infura'yı tercih etmiştik. Bu örnekte de Infura'yı tercih edeceğiz. Infura projesi oluşturmak için aşağıdaki yazıyı okuyabilirsiniz.

Blockchain Uygulama Geliştirme – #3 Kontratı Yayınlama ve API Hazırlama
Bir önceki yazımızda UI ile etkileşimin nasıl gerçekleştiğini görmüştük. Bu yazımızda kontratımızı Ethereum’un test ağlarından olan Rinkeby’de yayınlayacağız. Sonrasında kontrat için API hazırlayacağız. Eğer önceki…

Provider konfigürasyonu aşağıdaki gibi yapılıyor. Sonra web3'e provider olarak veriliyor.

    import WalletConnectProvider from "@walletconnect/web3-provider"
import Web3 from "web3";

export default async () => {

    let web3

    const provider = new WalletConnectProvider({
        infuraId: 'INFURA_PROJECT_ID'
    });

    provider.on('accountsChanged', (accounts) => {

        console.log('Selected Account', accounts[0])
    })

    provider.on('disconnect', () => {

        console.log('Disconnected')
    })

    await provider.enable();

    web3 = new Web3(provider)

    return { web3 }
}

Test Link : https://blockchain-multiple-wallet.herokuapp.com/

Vuejs ile hazırladığım örnek projenin kaynak koduna Github'dan erişebilirsiniz.

ahmetkucukoglu/blockchain-multiple-wallet

Vue
0
1

Kolay gelsin.

Yazıyı Paylaş

Yorum bırak

Yanıtla

Yanıtlamayı iptal et
Bu site reCAPTCHA tarafından korunmaktadır ve Google Gizlilik Politikası ve Hizmet Şartları geçerlidir. Yorumunuz başarılı şekilde gönderildi reCaptcha doğrulanamadı
Muhabbetle ASP.NET Core ile geliştirildi.