MetaMask 钱包拥有超过 1 亿次安装量和 3000 万月活跃用户,是 web3 领域领先的钱包,也是 web3 中活跃用户基础最大的钱包之一。MetaMask 每月通过超过 17,000 个 web3 dapp 处理 1 亿笔交易。这使 MetaMask 成为开发者的首选——他们构建的 dapp 能够吸引跨网络和生态系统的 web3 高级用户。
我们创建了 MetaMask Developer:旨在提供一套全面的工具、API 和 SDK,帮助数百万最活跃的 web3 用户完成入门,构建于 MetaMask 和 Infura 值得信赖的安全基础之上。
实现这一目标的第一步,是确保与 MetaMask 的集成尽可能无缝顺畅。值得庆幸的是,EIP-1193 专注于在客户端和应用程序之间建立统一的 JavaScript 以太坊 Provider API。这为连接以太坊钱包设立了行业标准,MetaMask 通过其 Wallet API 对此提供支持。
什么是 MetaMask Wallet API
MetaMask Wallet API 是一个全局 JavaScript API,可通过 window.ethereum provider 对象连接到已安装 MetaMask 钱包的用户所访问的网站。该 API 遵循 EIP-1193 规范,使以太坊账户能够读取区块链数据、发起消息和交易签名请求等操作。
Wallet API 利用 provider API 中的 window.ethereum.request(args) 函数,提供一套 JSON-RPC API。该套件在标准以太坊方法的基础上融入了 MetaMask 特有的增强功能,为开发者提供了全面且灵活的工具集。Wallet API 支持的方法按以下几个相关类别进行组织:
以太坊 API:该类别涵盖 EIP-1193 定义的标准以太坊 JSON-RPC API 方法,是以太坊区块链交互的基础。
MetaMask:这些是 MetaMask 特有的方法,提供其他钱包不一定支持的功能,为 MetaMask 用户提供独特特性。
Snaps:该类别包含 Snaps 功能专属的方法,支持在 MetaMask 生态系统内进行更广泛的交互。
受限方法:该类别下的方法需要通过 wallet_requestPermissions 调用获得 MetaMask 用户的明确授权,确保安全且经用户同意的体验。
移动端:该类别专为移动端特有方法而设,这些方法不受桌面扩展程序支持,专为移动用户量身定制使用体验。
如需全面了解 MetaMask Wallet API 支持的所有方法,包括其参数、预期响应及所属类别,请参阅交互式 API 参考文档。
虽然开发者可以选择直接通过 API 与 MetaMask 集成,但我们建议使用 MetaMask SDK 以获得更优质、更流畅的用户体验。
MetaMask SDK 基于 MetaMask API 构建,是一个综合性库,旨在促进您的 dapp 与 MetaMask 浏览器扩展程序及 MetaMask 移动端之间建立可靠、安全且顺畅的连接。该 SDK 支持跨不同 dapp 平台的多种 MetaMask 连接方式,消除了集成对第三方库的依赖。
此外,MetaMask SDK 通过 EIP-6963 实现 MetaMask 钱包的自动检测,进一步提升开发体验。这消除了手动配置或检测的需要,从而简化了开发者和用户的初始设置流程。
使用 MetaMask Wallet API 的理由
使用 MetaMask Wallet API 具有五大核心优势:
访问 MetaMask 特有方法:Wallet API 为开发者提供多种经过实战检验的 MetaMask 专属方法,支持追踪特定代币和资产、发起权限请求、将已入门用户重定向回您的 dapp,以及简化连接与签名体验等功能。
触达成熟的高级用户群体:开发者可以访问 MetaMask 庞大的用户基础,包括超过 1 亿次安装量、3000 万月活跃用户,以及通过超过 17,000 个已连接 web3 dapp 每月处理的 1 亿笔交易。
跨链支持:MetaMask 支持所有 EVM 链,并可通过 MetaMask Snaps 扩展支持其他链,从而支持 Sui、Solana、Bitcoin、Algorand、Cosmos、Tezos 和 Polkadot 等网络上的交易和 dapp。
统一的跨平台支持:MetaMask SDK 支持 JavaScript、iOS、Android 及游戏引擎上的 dapp,开发者只需几行代码即可与 MetaMask 集成。
与主流库集成:MetaMask SDK 可与 Wagmi、web3onboard、web3 react、ethers.js、web3 auth、WalletConnect 等主流 web3 连接库及其他钱包无关的连接库集成,无缝融入现有工作流程。
使用 MetaMask Wallet API 构建应用,为您的 dapp 引入数百万 web3 高级用户
接入 MetaMask Wallet API 提供了一个无与伦比的机会,让您能够深入触达庞大的 web3 爱好者和高级用户网络。通过充分利用 API 和 SDK 强大、安全且灵活的功能,开发者可以显著提升 dapp 的用户体验,优化入门流程,并确保跨区块链网络的兼容性。
立即访问 MetaMask Developer 门户,开启您的开发之旅。在这里,您将找到全面的指南、教程、模板以及将 MetaMask 无缝集成到您的 dapp 所需的一切资源。