Как интегрировать аутентификацию Magic с флаттером и сделать Solana нашим блокчейном?
Я пытался создать флаттер-приложение, в котором я мог бы выполнить аутентификацию с помощью Magic, а затем использовать его с Solana в качестве своей цепочки блоков, однако проблема, с которой я столкнулся, заключается в том, что публичный адрес, который я получаю из флаттер-пакета magic-sdk, всегда является эфириумом. один, а не Солана один.
final _magic = Magic.instance;
final metadata = await _magic.user.getMetadata();
final publicAddress = metadata.publicAddress;
Я даже создал собственный класс Magic и дал URL-адрес solana rpc во время создания экземпляра.
Magic.instance = Magic.custom(
MY_API_KEY,
rpcUrl: "https://api.testnet.solana.com",
chainId: 1,
);
До сих пор нет успеха. Поэтому любая помощь в этом будет высоко оценена!
1 ответ
Нужно указать расширение. Это в JS, но я считаю, что аналогичная логика применима к флаттеру:
import { Magic } from 'magic-sdk';
import { SolanaExtension } from '@magic-ext/solana';
const magic = new Magic('YOUR_API_KEY', {
extensions: [
new SolanaExtension({
rpcUrl: 'SOLANA_RPC_NODE_URL',
}),
],
});
ПРИМЕЧАНИЕ. DidToken всегда будет соответствовать методу Ethereum, но теперь открытый ключ будет открытым ключом Solana.