本节介绍如何搭建基础的开发环境。
- 命令行执行:
https://github.com/project-yui/Yui.git - 进入项目:
cd Yui - 安装npm包:
pnpm install
- 执行
pnpm run install-ntqq - pnpm run dev
- pnpm run nodestart
- 执行命令
pnpm run dev,开始编译ts文件 - 生成的文件在
program/resources/app/app_launcher/index.js - 启动无UI界面的Yui,执行
pnpm nodestart - 启动有UI界面的Yui,执行
pnpm start - 启动有UI界面保存Log的Yui,执行
pnpm start-log-file(分析接口行为使用)
- 修改ts代码会自动编译
- 要应用更新需要关闭QQ,重新启动
- 有时代码错误导致QQ崩溃,需要在任务管理器中杀掉进程
此处以获取好友列表为例
-
打开QQ界面
-
点击 联系人 -> 好友管理器
-
使用好友名称搜索日志
-
观察日志:
-
可以发现,它先注册一个
onBuddyListChange的订阅;然后,发送
getBuddyList触发这个订阅;最后,产生了一条不带callbackid的推送。
相关代码在:getFriendList
- 通过
sendEvent先订阅onBuddyListChange事件 - 再通过
registerEventListener注册一次性的好友列表变更事件onBuddyListChange,用来接收推送 - 最后,通过
sendEvent发送getBuddyList操作触发好友列表变更事件
相关代码在:initFriend
在这个函数中,通过 registerActionHandle 来注册动作调用函数。
