<!-- Source: https://docs.infraio.xyz/zh-CN/wallet/custom-network -->

# 在新网络上使用你的钱包

应用列表中的任何网络都可以使用。如果你的网络不在列表中,可以添加一个**自定义 EVM 网络**。你的地址在每个
EVM 网络上都相同,因此无需创建新钱包。

## 要求

网络必须是 EVM,并且支持钱包所需的功能:

- 位于标准地址的 **ERC-4337 EntryPoint v0.7**。
- **Kernel v3.3** 钱包合约和**通行密钥(WebAuthn)验证器**,部署在其标准地址。
- 一个 **bundler** 端点。
- 可选:**P-256 签名校验预编译**([RIP-7212](https://github.com/ethereum/RIPs/blob/master/RIPS/rip-7212.md))。
  没有它时,通行密钥签名将在合约代码中校验,费用更高。

## 1. 打开添加自定义网络

打开**钱包 → 网络 → 添加自定义网络**。

## 2. 输入 RPC URL

输入网络的 RPC URL。应用会从 RPC 读取 chain ID 并进行验证。你也可以填写可选的 **bundler URL**。

## 3. 让应用检查网络

应用会在链上检查合约,并告诉你该网络是否能够承载钱包。如果不能,应用会给出原因,例如缺少 EntryPoint
或缺少验证器。

## 4. 为你的地址充值

打开**收款**,选择新网络,并向你的地址转入一些该网络的**原生币**。该地址与你其他 EVM 网络上的地址相同。

## 5. 完成首次发送

你在该网络上的首次发送会在那里完成钱包设置(即"部署")。需要支付一次性的**设置费用**,从你在该网络上的原生币余额中扣除。
此后,发送只需支付正常的网络手续费。

> **Note:**
>
> 设置之前也可以收款。在钱包完成设置之前转入你在该网络上地址的资金,会安全地保存在你的地址上。

## 如果链上缺少合约

如果检查结果显示链上没有 EntryPoint、Kernel 合约或验证器,则**钱包暂时无法在该链上运行**。需要有人先部署
标准合约。ERC-4337 和 ZeroDev 的确定性部署器允许任何人在标准地址部署它们。请参阅公开的部署文档:

- [ERC-4337 文档](https://docs.erc4337.io)
- [ZeroDev Kernel 文档](https://docs.zerodev.app)
- [Kernel 合约仓库](https://github.com/zerodevapp/kernel)

部署完成后,请再次运行检查。

## 故障排查

### 没有 bundler

没有 bundler,应用无法发送交易。添加网络时请输入该网络的 bundler URL,或编辑网络并补充。请确认该 bundler 在该链上支持
EntryPoint v0.7。

### chain ID 不匹配

RPC 返回的 chain ID 必须与你输入的网络一致。请检查 RPC URL 是否属于正确的网络,并确认你没有把测试网的 URL 粘贴到主网上。

### 费用似乎偏高

如果网络没有 P-256 预编译(RIP-7212),通行密钥签名将在合约代码中验证,消耗更多 gas。这是正常现象。
需要由网络运营方添加该预编译来降低费用。

### 在设置之前转入了资金

资金是安全的。你的地址存在于每个 EVM 网络上,转入的资金仍归你所有。请先向该地址充入原生币,然后完成首次发送以设置钱包。

## 相关内容

- [收款与转账](https://docs.infraio.xyz/zh-CN/wallet/receive-send)
- [常见问题](https://docs.infraio.xyz/zh-CN/wallet/faq)
