> For the complete documentation index, see [llms.txt](https://gushi10546.gitbook.io/aptos-kai-fa-zhe-wen-dang/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://gushi10546.gitbook.io/aptos-kai-fa-zhe-wen-dang/guides-zhi-nan/gou-jian-qian-bao-kuo-zhan.md).

# 构建钱包扩展

本教程介绍如何构建钱包扩展以及如何将其与您的 dApp 一起使用

1. 在 Chrome 上安装钱包
2. 钱包功能
3. dApp 集成

## 步骤 1) 在 Chrome 上安装钱包

1. 下载最新的钱包版本并解压
2. 打开 Chrome 窗口并导航到 chrome://extensions 3.在扩展页面右上角启用**开发者模式**
3. 点击 **Load unpacked** 并将其指向您刚刚下载的文件夹 现在您应该在 chrome 扩展程序中看到 Aptos 钱包！ *提示：通过单击 Chrome 工具栏中的拼图图标打开下载的扩展程序*

## 步骤 2) 钱包功能&#x20;

钱包已经实现了与 Aptos 交互的一些基础知识

* 创建一个新账户
* 用测试币为您的账户注资
* 将硬币发送到另一个地址
* 链接到您在资源管理器上的帐户资源
* 查看和创建 NFT
* 选择不同的网络

## 步骤 3) dApp 集成&#x20;

dApp 可以从他们的网站向钱包发出请求：

* `connect()`：提示用户允许来自 dApp 的连接（*需要发出其他请求*）
* `isConnected()`：如果 dApp 已与钱包建立连接，则返回
* `account()`: 获取登录钱包的账户地址
* `signAndSubmitTransaction(transaction)`：签署给定的交易并提交给链
* `signTransaction(transaction)`：签署给定的交易并将其返回以由 dApp 提交
* `disconnect()`：删除 dApp 和钱包之间的连接。当用户想要删除连接时很有用。

### 使用

```
// import transaction build from aptos sdk: 
https://github.com/aptos-labs/aptos-core/tree/main/ecosystem/typescript/sdk
 import { BCS, TxnBuilderTypes } from 'aptos';
// Establish connection to the wallet const result = await (window as any).aptos.connect()
// Check connection status of wallet const status = await (window as any).aptos.isConnected()
// Gets the address of the account signed into the wallet const accountAddress = await (window as any).aptos.account()
// Create a transaction const transaction = { arguments: [address, '717'], function: '0x1:

:transfer', type: 'entry_function_payload', type_arguments: ['0x1::aptos_coin::TestCoin'], };
// Send transaction to the extension to be signed and submitted to chain const response = await (window as any).aptos.signAndSubmitTransaction(transaction)
// Send transaction to the extension to be signed and returns const signedTransaction = await (window as any).aptos.signTransaction(transaction)
// Disconnect dApp from the wallet await (window as any).aptos.disconnect(transaction)
```
