跳到主要内容

找 Provider

要检测用户是否已安装 UKey Wallet,Web 应用应检查 window.$ukey.solana 对象是否存在。

UKey Wallet 浏览器扩展、UKey Wallet 移动应用和 UKey Wallet 桌面版内置浏览器都会将 $ukey.solana 对象注入到用户访问的任何 Web 应用的 window 中。

如果 window.$ukey.solana 对象存在,Solana 应用可以通过 window.$ukey.solana 处的 API 与 UKey Wallet 交互。为了支持旧版集成,此 solana 对象也可在 window.solana 处访问。

要检测是否安装了 UKey Wallet,应用应检查额外的 isUKey 标志。

const isUKeyInstalled = window.$ukey?.solana?.isUKey;

如果没有检测到 UKey Wallet,可以提示用户安装 UKey Wallet。参考片段:

const getProvider = () => {
if ("$ukey" in window) {
const provider = window.$ukey?.solana;

if (provider?.isUKey) {
return provider;
}
}

window.open("https://ukey.com/zh-CN/download", "_blank");
};