- React
- React Native
- Flutter
- Unity
For each wallet, we will get the provider with useRpcProviders, to fetch the
balance by calling the
getBalance with the wallet address.Copy
Ask AI
import { useUserWallets } from '@dynamic-labs/sdk-react-core';
import { useRpcProviders } from '@dynamic-labs/sdk-react-core'
import { evmProvidersSelector } from '@dynamic-labs/ethereum-core'
const App = () => {
const userWallets = useUserWallets();
const { defaultProvider } = useRpcProviders(evmProvidersSelector)
useEffect(() => {
userWallets.forEach(async (wallet) => {
if (!wallet) return;
// Get the EVM Mainnet provider
const provider = defaultProvider?.provider;
if (!provider) return;
// Fetch the wallet balance
const balance = await provider.getBalance({ address: wallet.address });
console.log('balance', balance.toString());
});
}, [userWallets, defaultProvider]);
...
}
React Native
Copy
Ask AI
// Using RN client + viem public client
import { dynamicClient } from '<path-to-your-dynamicClient>';
import { mainnet } from 'viem/chains'
export const getAllBalances = async () => {
const wallets = dynamicClient.wallets.userWallets;
const publicClient = dynamicClient.viem.createPublicClient({ chain: mainnet });
const results = [] as Array<{ address: string; balance: string }>;
for (const w of wallets) {
const balance = await publicClient.getBalance({ address: w.address as `0x${string}` });
results.push({ address: w.address, balance: balance.toString() });
}
return results;
}
Copy
Ask AI
for (var wallet in DynamicSDK.instance.wallets.userWallets) {
DynamicSDK.instance.wallets.getBalance(wallet: wallet);
}
Unity only supports single wallets for now.
Copy
Ask AI
DynamicSDKManager.Instance.GetBalance();