跳转到主要内容
从 Privy 迁移是一个代码迁移,而不是钱包迁移。您将 Privy 的提供商和钩子替换为 Helius 的——心理模型(嵌入式、非托管、社交/密码登录)相同。不会继承的是用户现有的钱包:Privy 钱包无法导入到 Turnkey 中,因此每个用户在首次登录您的应用程序时都会获得一个新的 Helius 内嵌钱包 另一个重大变化是经济模式:Privy 在您的 RPC 之外按月活跃钱包计费,而 Helius 通过您已有的credits按每个签名收取 200 点积分。

迁移内容与不迁移内容

  • **迁移(您的集成):**提供商、钩子、登录配置和 RPC。这是下面步骤中的代码替换——通常需要几个小时的工作。
  • **不迁移(您的用户的钱包):**现有的 Privy 钱包、密钥和余额。Turnkey 无法导入它们,因此每个用户在首次登录时创建一个新的 Helius 内嵌钱包。
如果您有 1,000 个有资金的 Privy 用户:迁移后,每个用户登录并在不同的地址获得一个新的、空的 Helius 内嵌钱包。 他们的 Privy 余额保留在旧钱包中。转移资金是一个单独的、由用户发起的步骤,由您协调(参见您的用户钱包和资金)—— Helios 和 Turnkey 都无法代表用户转移资金。

Privy 到 Helius WaaS 的映射

迁移您的集成

这些步骤将您的代码从 Privy 转换为 Helius。其中没有涉及最终用户的钱包——这是在下面中介绍的。
1

替换提供商

HeliusWalletProvider 替换 PrivyProvider,并传递您的 Helius API 密钥而不是您的 Privy appId。参见设置
2

替换钩子

usePrivy() / useSolanaWallets() 调用替换为 useHeliusWallet()loginlogoutuserexportWallet 直接映射;签名移到同一个钩子 (signTransaction, signAndSendTransaction, signMessage)。
3

将认证配置移动到仪表板

在仪表板中配置您的登录方法于 WaaS → Configuration 下,而不是在提供商属性中——参见配置登录方法
4

将 RPC 指向 Helius

发送已通过 Helius 路由。丢弃独立的 RPC 提供商配置,并使用来自钩子的 connection / rpcUrl,或添加路由处理程序以优化发送者着陆。

您的用户钱包和资金

在您进行切换后首次登录时,每个用户会获得一个全新的嵌入式 Helius 钱包——与他们的 Privy 钱包不同的地址,余额为零。旧的 Privy 钱包及其资金保持不变。 如果您需要用户保留其现有余额,请规划一个迁移窗口
1

显示新地址

向每个登录用户展示他们的新 Helius 地址 (address 来自 useHeliusWallet())。
2

让用户转移资金

用户将资金从旧的 Privy 钱包转移到他们的新 Helius 地址。这是一项每个用户自行发起的操作——无论是 Helius 还是 Turnkey 都不能代表他们转移资金。
3

退役旧的集成

一旦用户使用他们的 Helius 钱包,请移除 Privy SDK。
用户不能继续使用他们的现有钱包吗? 不能替代嵌入钱包。外部钱包作为登录方法提供——它将用户认证到 Helius 嵌入钱包中,而不是直接操作外部钱包的密钥。直接从外部钱包签名将完全绕过 Helius(没有 Turnkey 签名,无法计量),因此不能替代您的应用程序所运行的嵌入钱包。