Giter Club home page Giter Club logo

openshamrock's Introduction

简介

☘ 基于 Lsposed(Non-Riru) 实现 Kritor 标准的 QQ 机器人框架!

本项目仅提供学习与交流用途,请在24小时内删除。
本项目目的是研究 Xposed 和 LSPosed 框架的使用。 Epic 框架开发相关知识。
Riru可能导致封禁,请减少使用。 如有违反法律,请联系删除。 请勿在任何平台宣传,宣扬,转发本项目,请勿恶意修改企业安装包造成相关企业产生损失,如有违背,必将追责到底。

兼容|迁移|替代 说明

  • 一键移植:本项目基于 go-cqhttp 的文档进行开发实现。
  • 平行部署:可多平台部署。

相关项目

Lagrange.Core NTQQ 的协议实现
OpenShamrock 基于 Xposed 实现 OneBot 标准的机器人框架(👈你在这里
Chronocat 基于 Electron 的、模块化的 Satori 框架

权限声明

如出现未在此处声明的权限,请警惕 Shamrock 是否被修改/植入恶意代码

  • 网络访问权限: Shamrock 进程需要使用 HTTP API 来进行一些操作
  • Hook 系统框架: 为了保证息屏状态下服务不被杀死,Shamrock 需要 Hook 系统框架
  • 后台启动 Activity: 自动唤醒 QQ 时需要使用

语音解码

请参考文档中 语音支持 部分

贡献说明

Shamrock 我可爱吗?欢迎你的到来,这里是一个很大的地方,有着无限可能,主要是有你啦!

鸣谢

感谢JetBrains提供的开源开发许可证,JetBrains 通过为核心项目贡献者免费提供一套一流的开发者工具来支持非商业开源项目。

开源协议

本项目使用 GPL-3.0 协议开放源代码

Shamrock - OneBot standard QQ robot framework based on Xposed implementation
Copyright (C) 2023 ~ 2024 Shamrock Team
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.

贡献者

openshamrock's People

Contributors

callng avatar douchchunfeng avatar fuqiuluo avatar huankong233 avatar ikechan8370 avatar miuzarte avatar mrxiaom avatar mythologyli avatar pisluanyao avatar realheart avatar simplxss avatar super1207 avatar tobycroft avatar whitechi73 avatar xsana avatar zhaodice avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

openshamrock's Issues

feat: 接口功能请求 代理执行 Web API 请求

描述功能

QQ 有一些 Web API 可以使用,它需要 uin、bkn(有些需要域名对应的 cookie),不知道在安卓端是否可以实现代为请求 API 返回对应的返回内容的功能。

像是:

{
    'http_proxy',
    {
        'url': 'https://find.qq.com/proxy/domain/cgi.find.qq.com/qqfind/find_v11?backver=2',
        'method': 'post',
        'data': '....keyword={uin}&nf=0&of=0&ldw={bkn}'
    },
    'getMoreLoginInfo'
}

bug: sk挂一段时间发的消息太多,会导致能接受消息,发送不出去消息,日志也没有明显输出

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

这个在sk没有明显的输出,但是可以看到sk能接受到消息,但是通过接口去发送消息,sk并发送不出去消息
感觉是虚拟机内存满了,但是没有日志输出

重启就能好比之前的版本好像差了点,之前只要模拟器不挂,sk就不会挂

系统信息

  • Shamrock 版本:
  • Android 版本: 9
  • 设备的制造商和型号:
  • 设备的 CPU 架构:

能否增加临时会话消息的识别和发送?

描述功能

能否增加临时会话消息的识别和发送?
比如群聊临时消息(作为管理员)

实现方法

之前go-cq通过打开allow-temp-session可以发送和接受临时会话消息

bug: 收到群消息会重发请求,一下子请求回调接口五六个请求,接口都是走的内网切接口状态都为200

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

请清晰地描述此 Bug 的具体表现,并提供错误日志。

复现 Bug

192.168.0.103 - - [04/Nov/2023:00:59:32 +0800] "POST / HTTP/1.1" 200 12 "-" "Shamrock/1.0.5-dev.4713310"
192.168.0.103 - - [04/Nov/2023:00:59:32 +0800] "POST / HTTP/1.1" 200 12 "-" "Shamrock/1.0.5-dev.4713310"
192.168.0.103 - - [04/Nov/2023:00:59:32 +0800] "POST / HTTP/1.1" 200 12 "-" "Shamrock/1.0.5-dev.4713310"
192.168.0.103 - - [04/Nov/2023:00:59:32 +0800] "POST / HTTP/1.1" 200 12 "-" "Shamrock/1.0.5-dev.4713310"
192.168.0.103 - - [04/Nov/2023:00:59:32 +0800] "POST / HTTP/1.1" 200 12 "-" "Shamrock/1.0.5-dev.4713310"
192.168.0.103 - - [04/Nov/2023:00:59:32 +0800] "POST / HTTP/1.1" 200 12 "-" "Shamrock/1.0.5-dev.4713310"
192.168.0.103 - - [04/Nov/2023:00:59:32 +0800] "POST / HTTP/1.1" 200 12 "-" "Shamrock/1.0.5-dev.4713310"
192.168.0.103 - - [04/Nov/2023:00:59:32 +0800] "POST / HTTP/1.1" 200 12 "-" "Shamrock/1.0.5-dev.4713310"
192.168.0.103 - - [04/Nov/2023:00:59:32 +0800] "POST / HTTP/1.1" 200 12 "-" "Shamrock/1.0.5-dev.4713310"
192.168.0.103 - - [04/Nov/2023:00:59:32 +0800] "POST / HTTP/1.1" 200 99 "-" "Shamrock/1.0.5-dev.4713310"
192.168.0.103 - - [04/Nov/2023:00:59:33 +0800] "POST / HTTP/1.1" 200 12 "-" "Shamrock/1.0.5-dev.4713310"
192.168.0.103 - - [04/Nov/2023:00:59:33 +0800] "POST / HTTP/1.1" 200 12 "-" "Shamrock/1.0.5-dev.4713310"
192.168.0.103 - - [04/Nov/2023:00:59:33 +0800] "POST / HTTP/1.1" 200 12 "-" "Shamrock/1.0.5-dev.4713310"
192.168.0.103 - - [04/Nov/2023:00:59:33 +0800] "POST / HTTP/1.1" 200 12 "-" "Shamrock/1.0.5-dev.4713310"
192.168.0.103 - - [04/Nov/2023:00:59:33 +0800] "POST / HTTP/1.1" 200 12 "-" "Shamrock/1.0.5-dev.4713310"
192.168.0.103 - - [04/Nov/2023:00:59:33 +0800] "POST / HTTP/1.1" 200 12 "-" "Shamrock/1.0.5-dev.4713310"
192.168.0.103 - - [04/Nov/2023:00:59:33 +0800] "POST / HTTP/1.1" 200 12 "-" "Shamrock/1.0.5-dev.4713310"
192.168.0.103 - - [04/Nov/2023:00:59:33 +0800] "POST / HTTP/1.1" 200 12 "-" "Shamrock/1.0.5-dev.4713310"
192.168.0.103 - - [04/Nov/2023:00:59:33 +0800] "POST / HTTP/1.1" 200 12 "-" "Shamrock/1.0.5-dev.4713310"
192.168.0.103 - - [04/Nov/2023:00:59:33 +0800] "POST / HTTP/1.1" 200 12 "-" "Shamrock/1.0.5-dev.4713310"
一个消息能重发五六遍,突然就这样了一开始是正常的,今天才接入的这个框架,原先使用的是go-cqhttp
希望新增两个api,获取所有禁言的用户以及时间
获取单个用户是否被禁言

请提供复现 Bug 的详细步骤,以确保我们可以理解并定位问题。

系统信息

  • Shamrock 版本: 最新版
  • Android 版本: 11
  • 设备的制造商和型号:
  • 设备的 CPU 架构:

bug: 回调地址access_token参数无效

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

回调HTTP地址中设置access_token参数,如http://cq.test.com:5701/?access_token=abcd在服务器上无法获取到对应参数;在鉴权Token中设置值后,在http服务器中也无法获取到post中的Authorization数据。

复现 Bug

回调HTTP地址中设置access_token参数,如http://cq.test.com:5701/?access_token=abcd,并在Server中开启验证。

系统信息

  • Shamrock 版本: 1.0.5-dev.d28c6dc
  • Android 版本: 13 (API 33)
  • 设备的制造商和型号: OnePlus NE2210
  • 设备的 CPU 架构: arm64-v8a

bug: 最新的开发版本出现频繁未激活框架

Bug信息

在使用时我已激活模块并且勾选作用域,但是会出现频繁未激活框架过一段时间又显示激活的情况,正在对之前的版本进行测试,顺便希望加回之前的签名功能(因为某些不可描述原因可不予理会)谢谢

系统信息

  • Shamrock 版本: 1.0.5-dev.80bb591
  • Android 版本: 13
  • 设备的制造商和型号: Redmi 12C
  • 设备的 CPU 架构: Arm64-v8

bug: get_login_info未按预期工作

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

调用get_login_info时无任何响应,日志报warning
POST:

{"action":"get_login_info","echo":"get_login_info_1700539420675322500"}

RECV: 无

[12:02:38] WARN java.lang.IllegalStateException: Tag 2 not found
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:108)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:584)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:793)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:697)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:684)

复现 Bug

ws正向连接调用get_login_info

系统信息

  • Shamrock 版本: Shamrock-v1.0.5-dev.2c49b10
  • Android 版本: Android 14
  • 设备的制造商和型号: Xiaomi Redmi K20 Pro
  • 设备的 CPU 架构: Arm64

bug: 群组专属头衔接口问题

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

#41 中我说set_group_special_title接口返回Attempt to invoke virtual method 'byte[] java.lang.String.getBytes(java.lang.String)' on a null object reference错误,目前我用最新版本试,给未设置昵称的群成员设置头衔还是有这个问题。

给他设置头衔会报错

给他设置头衔是正常的

(数据来自get_group_member_info接口)

复现 Bug

set_group_special_title接口,user_id为某一个未设置过群昵称的群成员。

系统信息

  • Shamrock 版本: 93cb6fc
  • Android 版本: 12
  • 设备的制造商和型号: Redmi K30 5G
  • 设备的 CPU 架构: ARM64

bug: 视频、音频组合发送时失败

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

当组合发送视频、音频消息时会失败

复现 Bug

例如调用send_group_msg,消息体为:

{
    "group_id": 群号,
    "message": [
        {
            "type": "video",
            "data": {
                "file": "file:///storage/emulated/0/Android/data/com.tencent.mobileqq/Tencent/Shamrock/tmpfiles/A679/FADCD7CA9D0EC94549E5F4CBB423A679"
            }
        },
        {
            "type": "text",
            "data": {
                "text": "xxx"
            }
        }
    ]
}

这样发出来的会变成“该消息只支持手机端查看”和一个“xxx"。如果删掉那个text消息,单独发送视频是成功的。record同理。

系统信息

  • Shamrock 版本:
  • Android 版本:
  • 设备的制造商和型号:
  • 设备的 CPU 架构:

feat: 增加访问外部文件功能

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的功能请求尚未在 Issues 列表中提出.
  • 确保您的功能请求是与 Shamrock 相关的,且可以实现.

Shamrock版本:Shamrock-v1.0.5-dev.4713310-all
模拟器版本:夜神模拟器安卓9
Magisk版本:24.1(24100)
LSPosed版本:1.9.2(7024)- Zygisk
QQ版本:8.9.88

描述功能

没有权限访问 /sdcard/Pictures 下的文件,手动复制到 /sdcard/Android/data/com.tencent.mobileqq/Tencent/Shamrock 下可以访问,不知道是不是bug,或能否新增访问外部文件的功能
1

请清晰地描述您想要的功能,并提供相关的信息。

实现方法

请提供您认为可以实现此功能的方法,如果您不知道如何实现,可以留空。
当然,如果您有兴趣,也可以自己实现并向我们提交 Pull Request。

bug: 使用反向ws连接onebot v12接口一直报Missing connect meta event

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

连接到局域网内的nonebot就会报missing connect meta event
[14:49:06] INFO 强制协议类型 (PAD)
[14:49:06] INFO LoadLibrary(name = shamrock)
[14:49:07] INFO LoadLibrary(name = shamrock)
[14:49:07] WARN 尝试链接WebSocketClient(url = ws://192.168.1.178:4500/onebot/v12/ws/)
[14:49:07] INFO QIMEI获取: 73ba18bd04a1fcab6899093f10001cf17b0f
[14:49:07] INFO WebSocketClient onOpen: 101, Switching Protocols
[14:49:08] WARN WebSocketClientService: 初始化服务
[14:49:08] INFO WebSocketClient onClose: 1008, Missing connect meta event, true
[14:49:08] WARN WebSocketClientService: 释放服务
[14:49:08] WARN 未配置Token,将不进行鉴权。
[14:49:08] INFO MSF Packet Receiver running!
[14:49:08] INFO Fetch kernel service successfully: 0,292667675,true
[14:49:08] INFO Register MSG listener successfully.
[14:49:09] WARN testAction is enabled.
[14:49:11] INFO Start HTTP Server: http://0.0.0.0:5700/
[14:49:13] INFO WebSocketClient onOpen: 101, Switching Protocols
[14:49:13] WARN WebSocketClientService: 初始化服务
[14:49:13] INFO WebSocketClient onClose: 1008, Missing connect meta event, true
[14:49:13] WARN WebSocketClientService: 释放服务
[14:49:18] INFO WebSocketClient onOpen: 101, Switching Protocols
[14:49:18] WARN WebSocketClientService: 初始化服务
[14:49:18] INFO WebSocketClient onClose: 1008, Missing connect meta event, true
[14:49:18] WARN WebSocketClientService: 释放服务

复现 Bug

用被动ws连接nonebot就会出现这个问题

系统信息

feat: 有一个已有功能的加强请求

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的功能请求尚未在 Issues 列表中提出.
  • 确保您的功能请求是与 Shamrock 相关的,且可以实现.

描述功能

  • 现有打开临时消息的方法太繁琐了,因为主目录深度的问题,当然如果只是麻烦,是可以解决的。
  • 如果使用“虚拟空间”的情况下,目前大部分手机系统,Google的Pixel,HAVOC,MIUI等,再使用虚拟空间的情况下,虚拟空间的目录授权器会出现授权故障的情况,导致无法进入主目录,这就导致完全无法配置的情况出现了
  • 如果默认是开启状态,因为HTTP是有一个临时消息指示器的,所以可以再次拦截无需考虑可能因此带来的风险
  • 因为这是Android系统本身授权的问题,所以暂时没办法解决,只能反馈到Issue了,目前我用的系统是Havoc的Android14,虚拟空间只能添加普通APP,系统APP是没办法添加到虚拟空间的,这也导致我无法复制一个目录授权器到虚拟空间来bypass这个问题

实现方法

  • 能否将临时消息对话功能的开关做到框架控制面板里面呢?
  • 如果是因为allow-temp-session初始化为false的问题,那能否把allow-temp-seesion改成disable-temp-session呢?这样默认false的情况下也不会耽误使用

bug: 无法发送群聊消息

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

无法发送群聊消息
请清晰地描述此 Bug 的具体表现,并提供错误日志。
{
"status": "failed",
"retcode": 20002,
"data": {
"url": "/send_group_msg",
"error": "No instance for key AttributeKey: isJson"
}
}

复现 Bug

请提供复现 Bug 的详细步骤,以确保我们可以理解并定位问题。

系统信息

  • Shamrock 版本: 1.05
  • Android 版本: 9
  • 设备的制造商和型号:雷电模拟器
  • 设备的 CPU 架构: x86_64

发送合并转发消息会导致QQ异常退出

          貌似新问题,如附件:

1.发送合并转发消息会导致QQ异常退出(可复现) (演示时贪方便,用的QA+1Plus发送,人工合并转发也会一样崩溃)
2.额外的问题,目前不清楚如何复现,挂一段时间(小于45分钟)即会让QQ退出

Video_1699155306893.mp4

Originally posted by @luanyaolingwu in #10 (comment)

bug: 点赞不生效

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

执行send_like时,正常返回成功:

{
    "status": "ok",
    "retcode": 0,
    "data": {},
    "message": "成功",
    "echo": ""
}

但是实际没有点赞。好友或陌生人都一样。

复现 Bug

请提供复现 Bug 的详细步骤,以确保我们可以理解并定位问题。

系统信息

  • Shamrock 版本:
  • Android 版本:
  • 设备的制造商和型号:
  • 设备的 CPU 架构:

bug: 请求添加好友没有事件通知

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

请清晰地描述此 Bug 的具体表现,并提供错误日志。

复现 Bug

请提供复现 Bug 的详细步骤,以确保我们可以理解并定位问题。

系统信息

  • Shamrock 版本:
  • Android 版本:
  • 设备的制造商和型号:
  • 设备的 CPU 架构:

bug: 设置群组专属头衔接口报错

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

set_group_special_title接口报错Attempt to invoke virtual method 'byte[] java.lang.String.getBytes(java.lang.String)' on a null object reference

复现 Bug

http get请求http://ip:port/set_group_special_title?group_id=xxxxxx&user_id=xxxxxx&special_title=IMSB&access_token=xxxxxx
响应如下:

{
    "status": "failed",
    "retcode": 20002,
    "data": {
        "url": "/set_group_special_title?group_id=xxxxxx&user_id=xxxxxx&special_title=IMSB&access_token=xxxxxx",
        "error": "Attempt to invoke virtual method 'byte[] java.lang.String.getBytes(java.lang.String)' on a null object reference"
    }
}

系统信息

  • Shamrock 版本: 6b4f763
  • Android 版本: 12
  • 设备的制造商和型号: Redmi K30 5G
  • 设备的 CPU 架构: ARM64

feat: 日志保存

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的功能请求尚未在 Issues 列表中提出.
  • 确保您的功能请求是与 Shamrock 相关的,且可以实现.

描述功能

希望可以和go-cqhttp一样把日志输出到log文件
经常性遇到bot崩溃后shamrock打开却没有之前日志的情况(虽然我怀疑是设备自己重启了)

实现方法

bug: 撤回群聊消息的事件无法触发

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

在QQ群里面撤回消息的时候,没有上报群聊消息撤回事件,同时日志里面出现异常
A7A9A08370FC638D871523F66732924A

复现 Bug

撤回群聊消息就会触发

系统信息

  • Shamrock 版本: 1.0.5-dev.19e3846 - Xposed
  • Android 版本: 11
  • 设备的制造商和型号: 联想YOGA Pad Pro
  • 设备的 CPU 架构: arm64

feat: 能否支持用户回复消息消息带有引用消息的ID

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的功能请求尚未在 Issues 列表中提出.
  • 确保您的功能请求是与 Shamrock 相关的,且可以实现.

描述功能

现在的sk每次在群聊中引用消息回复,返回的是本次消息的id而不能查询到引用消息的消息ID,
能实现这个功能就好了,

这个地方与gocq稍微有点差别

撤回消息也是,使用消息撤回,会提示,消息message_id 没有映射

实现方法

请提供您认为可以实现此功能的方法,如果您不知道如何实现,可以留空。
当然,如果您有兴趣,也可以自己实现并向我们提交 Pull Request。

bug: 无法对QQ隐藏Shamrock

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

文档-快速开始-部署: 禁止对 QQ 客户端 隐藏 Shamrock,这将导致无法运行。
文档-常见问题-反检测: 使用隐藏应用列表对QQ隐藏Shamrock,否则您可能遭到封禁。

复现 Bug

使用隐藏应用列表对QQ隐藏Shamrock后,QQ无限崩溃,无法打开。

系统信息

bug: JSON消息无法合成

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

根据 此处文档指示
得到:
{
status: 'failed',
retcode: 20002,
data: { url: '/send_group_msg', error: '消息合成失败,请查看日志或者检查输入。' }
}

复现 Bug

请提供复现 Bug 的详细步骤,以确保我们可以理解并定位问题。

系统信息

  • Shamrock 版本: 1.0.5-dev
  • Android 版本: 10
  • 设备的制造商和型号:
  • 设备的 CPU 架构: ARM64

feat:群私聊消息接收不到

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的功能请求尚未在 Issues 列表中提出.
  • 确保您的功能请求是与 Shamrock 相关的,且可以实现.

描述功能

请清晰地描述您想要的功能,并提供相关的信息。

实现方法

请提供您认为可以实现此功能的方法,如果您不知道如何实现,可以留空。
当然,如果您有兴趣,也可以自己实现并向我们提交 Pull Request。

bug: 当回复(引用)文件消息时获取为空

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

当回复(引用)一条文件消息时,根据该reply的id获取其引用消息,此时返回的message是一个空数组。
而且似乎群内或私聊有人发送文件时shamrock这边没有日志,似乎是没有识别这个事件?

复现 Bug

返回示例:

{
    "status": "ok",
    "retcode": 0,
    "data": {
        "time": 1699202081,
        "message_type": "group",
        "message_id": xxx,
        "real_id": 0,
        "sender": {
            "user_id": xxx,
            "nickname": "xxx",
            "sex": "unknown",
            "age": 0,
            "uid": "xxx"
        },
        "message": [],
        "group_id": xxx,
        "peer_id": xxx
    },
    "echo": ""
}

系统信息

  • Shamrock 版本: Shamrock-v1.0.5-dev.7260036-arm64
  • Android 版本: 12
  • 设备的制造商和型号:
  • 设备的 CPU 架构: arm64

feat: 能否支持双开qq或者tim

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的功能请求尚未在 Issues 列表中提出.
  • 确保您的功能请求是与 Shamrock 相关的,且可以实现.

描述功能

我有两个qq账号,我需要一个正常使用不挂bot,另一个通过OpenShamrock实现bot
我尝试使用qq+tim,发现Openshamrock不支持tim
我尝试使用爱玩机工具箱中的应用双开,创建了一个工作模式的分区,并加入了OpenShamrock与qq在该分区
在lsp中启用了模块并勾选了qq,但是没有勾选系统框架
LSPosed激活后没有什么问题,但是在重启后,卡第二屏,已经经过排查,确定为Openshamrock问题
已经尝试过将magisk的超级用户权限从仅设备管理者由设备管理者控制再到各用户独立,问题仍然存在
能否增加对于双开qq或者tim的支持?

实现方法

不知

bug: 群成员增加事件数据问题

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

请清晰地描述此 Bug 的具体表现,并提供错误日志。

使用user_id获取到的qq并非新增成员QQ而是操作者QQ,与文档不符

复现 Bug

请提供复现 Bug 的详细步骤,以确保我们可以理解并定位问题。

welcome = on_notice(rule=isGroupIncreaseNoticeEvent, block=False)
@welcome.handle()
async def _(event: GroupIncreaseNoticeEvent):
QQ = event.user_id

此处获取到的QQ号并非新加入成员qq而是操作者qq

系统信息

  • Shamrock 版本: Shamrock-v1.0.5-dev.ca71eca-all
  • Android 版本: 12
  • 设备的制造商和型号: HUAWEI MATE50 (mumu)
  • 设备的 CPU 架构: Arm64

bug: 消息中`nickname`字段值不存在

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

群消息和私聊消息中的sender.nickname均不存在

复现 Bug

// 群消息:
{
  time: 1698735649,
  self_id: 2237576556,
  post_type: "message",
  message_type: "group",
  sub_type: "normal",
  message_id: 2081743665,
  group_id: 902391880,
  peer_id: 2237576556,
  user_id: 1271411694,
  message: [
    {
      data: {
        text: "1",
      },
      type: "text",
    },
  ],
  raw_message: "1",
  font: 0,
  sender: {
    user_id: 1271411694,
    nickname: "",
    card: "Lain呀",
    role: "owner",
    title: "",
    level: "",
  },
}

// 私聊消息:
{
  time: 1698735687,
  self_id: 2237576556,
  post_type: "message",
  message_type: "private",
  sub_type: "friend",
  message_id: 1475462765,
  target_id: 1271411694,
  peer_id: 2237576556,
  user_id: 1271411694,
  message: [
    {
      data: {
        text: "1",
      },
      type: "text",
    },
  ],
  raw_message: "1",
  font: 0,
  sender: {
    user_id: 1271411694,
    nickname: "",
    card: "",
    role: "member",
    title: "",
    level: "",
  },
}

系统信息

  • Shamrock 版本: "Shamrock/1.0.5-dev.58cf620"
  • Android 版本: 12
  • 设备的制造商和型号: X86
  • 设备的 CPU 架构:

feat: FRP Client

描述功能

1.添加FRP客户端,方便使用运行于模拟器内Shamrock所提供的服务
2.类似于其它QQ模块那样直接把设置入口置于QQ设置页,避免使用HMA时导致QQ崩溃

实现方法

可能的方法:
1.直接内置好frp功能,开箱即用 /or/ 做成可选的模块,由用户自行决定是否加载
2.暂无想法,感觉得重做一部分东西

--------++++--------
Generated by AppErrorsTracking
[Stack Trace]:
java.lang.UnsatisfiedLinkError: No implementation found for java.lang.String moe.fuqiuluo.shamrock.xposed.actions.PullConfig.testNativeLibrary() (tried Java_moe_fuqiuluo_shamrock_xposed_actions_PullConfig_testNativeLibrary and Java_moe_fuqiuluo_shamrock_xposed_actions_PullConfig_testNativeLibrary__)
at moe.fuqiuluo.shamrock.xposed.actions.PullConfig.testNativeLibrary(Native Method)
at moe.fuqiuluo.shamrock.xposed.actions.PullConfig.initAppService(PullConfig.kt:89)
at moe.fuqiuluo.shamrock.xposed.actions.PullConfig.access$initAppService(PullConfig.kt:22)
at moe.fuqiuluo.shamrock.xposed.actions.PullConfig$invoke$1$6.invoke(PullConfig.kt:77)
at moe.fuqiuluo.shamrock.xposed.actions.PullConfig$invoke$1$6.invoke(PullConfig.kt:68)
at moe.fuqiuluo.shamrock.xposed.helper.AppTalker.talk(AppTalker.kt:15)
at moe.fuqiuluo.shamrock.xposed.helper.internal.DataRequester.request(DataRequester.kt:65)
at moe.fuqiuluo.shamrock.xposed.helper.internal.DataRequester.request$default(DataRequester.kt:54)
at moe.fuqiuluo.shamrock.xposed.actions.PullConfig$invoke$1.invokeSuspend(PullConfig.kt:68)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:108)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:584)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:793)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:697)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:684)
Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@c0823de, Dispatchers.Default]
--------++++--------
(垃圾想法,如果打搅到大佬,咱先自抽30大板)

feat: 发送消息前判断账号是否存在此好友/群聊,不存在则取消发送并返回错误

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的功能请求尚未在 Issues 列表中提出.
  • 确保您的功能请求是与 Shamrock 相关的,且可以实现.

描述功能

发送消息前判断账号是否存在此好友/群聊,不存在则取消发送并返回错误

bug: 私聊离线文件上传得到的url为空字符串

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

私聊离线文件上传得到的url为空字符串

{
  "time": 1700404506,
  "self_id": self_id,
  "post_type": "notice",
  "notice_type": "private_upload",
  "operator_id": operator_id,
  "user_id": user_id,
  "sender_id": sender_id,
  "private_file": {
    "id": "fd7b94...",
    "name": "b_1e39...",
    "size": 43075,
    "sub_id": "D6EATK...",
-   "url": "",
    "expire": 1701009305
  }
}
{
  "time": 1700404506,
  "self_id": self_id,
  "post_type": "message",
  "message_type": "private",
  "sub_type": "friend",
  "message_id": message_id,
  "target_id": target_id,
  "peer_id": peer_id,
  "user_id": user_id,
  "message": [
    {
      "data": {
        "sub": "D6EATK...",
        "size": 43075,
        "expire": 1701009305,
        "name": "b_1e39...",
        "id": "fd7b94...",
-       "url": ""
      },
      "type": "file"
    }
  ],
- "raw_message": "[CQ:file,sub=D6EATK...,size=43075,expire=1701009305,name=b_1e39...,id=fd7b94...,url=]",
  "font": 0,
  "sender": {
    "user_id": user_id,
    "nickname": "謬紗特 ",
    "card": "",
    "role": "member",
    "title": "",
    "level": ""
  }
}

复现 Bug

接收私聊文件

系统信息

bug: 返回给服务端数据过大时WebSocket异常断开?

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

服务端在调用一些数据量比较大的端点时可能导致WebSocket异常后断开连接

复现 Bug

服务端调用/get_group_member_list时,参数带入一个群成员较多的群号,Shamrock日志页马上打印WebSocket异常,然后断开连接重连
QQ截图20231101144607

系统信息

  • Shamrock 版本:
  • Android 版本:
  • 设备的制造商和型号:
  • 设备的 CPU 架构:

bug: 使用了引用消息返回消息id的版本,sk发送一条消息qq就挂了,导致无限重启

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

请清晰地描述此 Bug 的具体表现,并提供错误日志。

我回退到最新的dev版本
发送多个图片消息都没有不会导致qq挂掉

包含信息,图片就删除了

复现 Bug

请提供复现 Bug 的详细步骤,以确保我们可以理解并定位问题。

系统信息

  • Shamrock 版本:
  • Android 版本:
  • 设备的制造商和型号:
  • 设备的 CPU 架构:

feat: 定时杀死(重启)QQ进程

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock. O
  • 确保您的功能请求尚未在 Issues 列表中提出. O
  • 确保您的功能请求是与 Shamrock 相关的,且可以实现. O

描述功能

指定周期内自动杀掉QQ进程,再借由QQ保活功能再拉起
我自己的环境上遇到开机几小时后bot失去响应的问题,前端后端的日志都没有任何错误,消息能收,甚至Websocket连接能新建立,但就是没响应,杀掉QQ重启就能解决。
虽然也有外部方法能实现,不知道有无可能加入这个功能。

实现方法

bug: 无法在对QQ隐藏Shamrock之后激活框架

描述 Bug

暂无日志

复现 Bug

正常情况: 不进行任何隐藏时,Shamrock中正确显示框架激活
使用HMA: 当使用隐藏应用列表对QQ隐藏Shamrock时,QQ可以正常打开,但Shamrock提示未激活 (此时,同时处于被隐藏状态的QA正常工作)

系统信息

  • Shamrock 版本: 最新构建
  • Android 版本: 9.0
  • 设备的制造商和型号: NoxAndroidEmu v7.0.5.8
  • 设备的 CPU 架构: x86_64

feat: 希望可以发送本地图片/语音

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的功能请求尚未在 Issues 列表中提出.
  • 确保您的功能请求是与 Shamrock 相关的,且可以实现.

描述功能

因为OpenShamrock项目部署于虚拟机,本地文件路径无法被识别发送,导致部署在本地的bot如果需要发送图片/语音必须来源为网络。希望能够实现发送本地图片/语音的功能。

实现方法

设置临时资源文件夹,实现本地文件与虚拟机端文件映射

bug: 私聊发送语音卡住

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

私聊发送语音(record)会卡住没有响应,群聊正常。

复现 Bug

当发送record类型消息时,使用send_private_msg接口向好友发送消息时会无限卡住没有响应,开启debug后日志正常会打印silk编码的日志。
image
当使用send_group_msg接口向群聊发送时,一切正常。
此外,send_group_msg接口如果group_id填写为本身不在的群组,会导致shamrock崩溃重启。

系统信息

  • Shamrock 版本: Shamrock-v1.0.5-dev.41675ed-all
  • Android 版本: 12
  • 设备的制造商和型号: Realme
  • 设备的 CPU 架构: arm64

bug: 发送图片时,发送的为图片链接而非图片

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

  • 返回的是图片链接而非图片,如下:
<message><image url="https://i.pixiv.re/img-original/img/2023/08/06/10/42/05/110572731_p0.jpg"/></message>
<message><image url="https://i.pixiv.re/img-original/img/2022/03/10/19/41/31/96815081_p7.jpg"/></message>
<message><image url="https://i.pixiv.re/img-original/img/2022/10/14/10/30/01/101919806_p0.jpg"/></message>
<message><image url="https://i.pixiv.re/img-original/img/2022/11/27/17/52/49/103143640_p2.jpg"/></message>
<message><image url="https://i.pixiv.re/img-original/img/2020/11/05/23/51/20/85485059_p0.jpg"/></message>

复现 Bug

  • koishibot通过ws链接shamrock
  • 使用booru命令
  • 返回链接而非图片

系统信息

  • Shamrock 版本: Shamrock-v1.0.5-dev.040b132
  • Android 版本: 13
  • 设备的制造商和型号: 红米K20Pro
  • 设备的 CPU 架构: arm64

bug: 调用api返回的时间格式错误

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

{"status":"ok","retcode":0,"data":{"message_id":404744780,"time":1.700381396848E9},"echo":"send_group_msg_1700381395354325100"}

"time":1.700381396848E9
时间戳应确保其类型为整形

复现 Bug

调用/send_group_msg

系统信息

bug: 返回出错时,data未保持原类型的空状态返回

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

在返回群成员的时候,如果出现被踢出,获取group member的时候就会出错

{"status":"failed","retcode":20002,"data":{},
"message":"获取群成员列表失败","echo":{"action":"get_group_member_list","self_id":409528661,"extra":542749156}}

这里的data返回类型如果是[]会更好一些(因为原本请求的也是一个列表),因为有些语言做unmarshal的时候类型不匹配就会整个报错,虽然可以单独做处理,但是挺复杂的了,所以希望这块可以优化一下

复现 Bug

请提供复现 Bug 的详细步骤,以确保我们可以理解并定位问题。

系统信息

  • Shamrock 版本: d28c6dc
  • Android 版本: 14
  • 设备的制造商和型号: Mi9
  • 设备的 CPU 架构: V8? maybe

bug:

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

lsposed 7034,安卓14,QQ8.9.78,shamrock刚下的最新版,频道在看了两眼时必定闪退

复现 Bug

打开频道等几秒闪退

系统信息

  • Shamrock 版本: 1.0.5
  • Android 版本: 14
  • 设备的制造商和型号: oppo/oppor11st
  • 设备的 CPU 架构: 骁龙660

bug: 合并转发顺序

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

合并转发中的消息顺序没有按照传入的顺序来进行制作转发,最终得到的消息变成了无序的合并转发

bug: 获取群文件根目录列表会引起闪退, 测试过两个群都会100%触发

访问 /get_group_root_files 会引发qq闪退

描述 Bug

qq直接崩掉, 框架断开连接, 必须手动重启qq
使用LSPatch修补的, 手机无法root所以暂时无法提供详细日志
没有其他手机, 不确定是不是手机问题

复现 Bug

在反向ws连接后,调用/get_group_root_files 端点,

系统信息

QQ 8.9.85
Shamrock版本 已经是当前最新的 来自于
android 12
arm64
三星 exynos 9825

feat: 账号切换接口

描述功能

对于只有一个真机,且无法使用 虚拟机/模拟器(新号会被封)的用户,希望能添加切换账号的功能。
可以在需要时,通过此接口切换到机器人账号并发送消息。

实现方法

在QQ主界面,长按头像会打开账号控制面板,在此可以快速切换已认证的账号。

bug: 正向ws连接时有概率缺失lifecycle信息

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的问题尚未在 Issues 列表中提出.
  • 确保您的问题不是由于您的代码错误导致的.

描述 Bug

正向ws连接到shamrock时有概率收不到lifecycle
因为还没支持/get_login_info,所以暂时通过lifecycle获取自身QQ,然后刚刚突然发现没获取到
重连几下又连着复现了两次
概率不高,现在又复现不了了
shamrock和bot在局域网内的两台不同设备上
我有两个bot连接在同一个shamrock端口上,但是我没法得知另一个bot接收到了什么数据
顺便催一下/get_login_info((

复现 Bug

正向websocket,多次断开重连shamrock

系统信息

  • Shamrock 版本: Shamrock-v1.0.5-dev.ca71eca-arm64 //不是最新,看了眼没有跟lifecycle有关的commit
  • Android 版本: Android 14
  • 设备的制造商和型号: Xiaomi Redmi K20 Pro
  • 设备的 CPU 架构: Arm64

feat: 可以加个定期删除qq本地所有聊天记录的功能吗

警告: 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭

  • 确保您使用的是 最新开发版本 的 Shamrock.
  • 确保您的功能请求尚未在 Issues 列表中提出.
  • 确保您的功能请求是与 Shamrock 相关的,且可以实现.

描述功能

qq本地的聊天记录多了以后配置不够就很容易闪退了,删掉本地聊天数据后会稳定很多。

实现方法

请提供您认为可以实现此功能的方法,如果您不知道如何实现,可以留空。
当然,如果您有兴趣,也可以自己实现并向我们提交 Pull Request。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.