• This repository has been archived on 20/Oct/2023
  • Stars
    star
    410
  • Rank 105,468 (Top 3 %)
  • Language
    Kotlin
  • License
    GNU Affero Genera...
  • Created over 4 years ago
  • Updated over 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

QQ机器人 /(实验性)在Android上运行Mirai-console,支持插件
logo
title

Mirai 是一个在全平台下运行,提供 QQ Android 协议支持的高效率机器人库

图标以及形象由画师DazeCake绘制

MiraiAndroid

GitHub Workflow Status Release MiraiForum

MiraiAndroid 是 基于 Mirai 的 QQ 机器人 Android 前端程序,支持多种脚本接口,具有 轻量、简洁、易用、高效 的特点,依赖于 mirai-console

相比使用 Termux 或者是 Linux Deploy 等部署并运行 Mirai 的方案, MiraiAndroid 提供了更好的性能、更少的资源占用,以及更方便的操作界面。

最新的构建版本你可以到 appcenter 内找到。

声明

一切开发旨在学习,请勿用于非法用途

  • MiraiAndroid 是完全免费且开放源代码的软件,仅供学习和娱乐用途使用
  • MiraiAndroid 不会通过任何方式强制收取费用,或对使用者提出物质条件
  • MiraiAndroid 由整个开源社区维护,并不是属于某个个体的作品,所有贡献者都享有其作品的著作权。

许可证

Copyright (C) 2019-2020 Mamoe Technologies and contributors.

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero 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 Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.

MiraiAndroid 采用 AGPLv3 协议开源。为了整个社区的良性发展,我们强烈建议您做到以下几点:

  • 间接接触(包括但不限于使用 httpapi 或 跨进程技术)到 mirai 的软件使用 AGPLv3 开源
  • 不鼓励,不支持一切商业使用

已实现的功能

  • 兼容 mirai-console 插件(实验性)
  • 带验证码的登录处理
  • 内置 Google d8 dex 编译器,可直接编译 JVM 的 console 插件在 Android 运行(实验性)
  • lua 脚本接口(测试版)
  • 网络掉线提醒

安装脚本

目前脚本系统仍在开发中,对于2.x版本的lua或js脚本系统正在迁移中,请等待后续更新

安装插件

对于 apk(Android 软件包) 格式的插件,请直接安装到系统内即可,关于这类插件的开发说明请看这里

对于jar格式的插件,你有两个办法安装插件

使用 app 直接打开 jar 文件安装

这是最简单的方式。 app 切换到插件管理点击右上角选择即可,你也可以使用系统文件选择器直接打开 jar 文件

对于已经经过 d8 转换过的插件,请直接导入

如果你无法选择文件,请使用第三方文件选择器选择(例如 Mix)

使用 pc 转换后导入

请按照以下方法操作

  • 找到 d8 编译器的运行脚本

d8工具已在新版 Android sdk 中自带,它就在 build-tools 中对应版本的文件夹下。在Windows平台他是一个bat文件

  • 编译

打开终端,使用以下命令编译

d8.bat --output 输出文件.jar 源文件

输出文件扩展名必须是jar或者是zip

  • 复制资源

使用压缩软件打开源jar文件,将里面的 plugin.ymlMETA-INF 和其他资源文件(除存放class文件夹的其他文件)复制到新的jar文件内

  • 安装插件

将上一步的新的jar文件复制到手机的 /sdcard/Android/data/io.github.mzdluo123.mirai.android/files/plugins/

重启即可使用插件,当然部分插件可能也会存在兼容性问题

FAQ

Q: 后台运行被系统杀死
A:请手动将应用添加到系统后台白名单

Q:应用崩溃或后台报错
A:如果是后台报错一般是插件或者是mirai-core的问题,是mirai-core的问题请在菜单内找到分享日志并到群内或开启issue反馈,插件的问题请联系对应开发者;如果是应用崩溃,请重启并按照上面的方法提交日志给我们

兼容的 Console 插件列表

以下插件由群友测试未发现问题,你可以到群内下载,或是到插件中心手动下载jvm版并导入

  • mirai-api-http
  • chatcommand

对于其他插件请自行尝试;此外,如果你的插件使用了一些 Android 不支持的 api(例如BufferedImage) 那么使用了这个api的功能将绝对不能正常工作

关于支持的 Android 版本

MiraiAndroid 只能在 Android8.0 及以上版本的系统中工作,因为上游 MiaiCore 使用了大量 Java8 特性

目前测试过的版本中 Android10 无问题, Android8.1 无法在移动端编译插件

消息推送(2.9新增)

必须使用自动登录并在设置中开启才能使用该功能

你可以发送广播来快速向指定群或联系人推送信息,这里是data的URI格式

ma://sendGroupMsg?msg=消息&id=群号
ma://sendFriendMsg?msg=消息&id=账号
ma://sendFriendMsg?msg=消息&id=账号&at=要at的人
sendBroadcast(Intent("io.github.mzdluo123.mirai.android.PushMsg").apply {
        data = Uri.parse("ma://sendGroupMsg?msg=HelloWorld&id=655057127")
    })

以下是 auto.js 的示例

app.sendBroadcast({
    action: "io.github.mzdluo123.mirai.android.PushMsg",
    data: "ma://sendGroupMsg?msg=来自autojs的消息&id=655057127"
})

以下是 tasker 的示例

    ma (2)
    	A1: 发送意图 [ 操作:io.github.mzdluo123.mirai.android.PushMsg 类别:None Mime类型: 数据:ma://sendGroupMsg?msg=来自tasker的消息&id=655057127 额外: 额外: 额外: 包: 类: 目标:Broadcast Receiver ] 

More Repositories

1

TxCaptchaHelper

腾讯滑动验证码助手
Kotlin
375
star
2

SurfingTutorial

给中国新大学生的网上冲浪和计算机使用教程
130
star
3

silk4j

[全平台] silkv3编解码器的Java接口,同时支持mp3格式的编解码
C
60
star
4

AntiSetu

这么多setu机器人当然要有一个antisetu机器人啦
Kotlin
31
star
5

SimpleGroupAuth

简单的进群验证插件
Kotlin
29
star
6

TimeTableBot

课程表提醒bot,适配正方单点登录和正方教务系统
Kotlin
26
star
7

MineSweeper

Mirai的扫雷小游戏
Python
24
star
8

rs_pixiv

Rust
23
star
9

MiraiForward

(项目已废弃)适用于Mirai QQ机器人的跨群转发消息插件,可用于多群互联
Kotlin
23
star
10

yunbanke

蓝墨云 云班课接口和自动签到
Python
22
star
11

EnableQQLog

启用qq的log
Kotlin
14
star
12

chaoxing_action

使用Github Action自动完成学习通签到
Python
13
star
13

AntiWechatFollow

讨厌了关注微信查看更多,看这里吧!
11
star
14

2048-c

学习c语言随手写的2048小游戏,附带一个自动玩的ai
C
10
star
15

glitch_gocq

在Glitch平台上不间断运行go-cqhttp
Python
9
star
16

MiraiCD

持续部署Mirai插件
Kotlin
9
star
17

mirai-spring-boot-starter

Kotlin
7
star
18

wuhan_bot

自动将2019-ncov的最新信息和患病人数发送到qq群-使用丁香园数据
Python
7
star
19

bypass_block

绕过学校防火墙对百度网盘的限制
Python
6
star
20

muzei_coolapk

酷安酷图的muzei壁纸源插件
Java
6
star
21

pxFullSpider

爬取pixiv所有图片,支持分布式,使用mysql存储数据
Python
6
star
22

MiraiLiveChat

obs直播辅助
Kotlin
5
star
23

mzdluo123.github.io

博客
HTML
5
star
24

PvPmode

A PvP controller plugin for nukkit server
Java
3
star
25

mzdluo123

3
star
26

HomeCloud

家里服务器自动睡眠唤醒
Rust
3
star
27

cloudflare_ddns_for_windows

自用的cloudflare ddns脚本,支持Windows
Python
2
star
28

zhihuishu

智慧树接口(签到)
Python
2
star
29

MCHold

Python
2
star
30

SanforProxy

基于深信服vpn的web登录接口实现的第三方代理客户端
Python
2
star
31

AndroidLabClient

AndroidLab的Android客户端(套壳浏览器)
JavaScript
2
star
32

mcu_host

python实现的简单单片机上位机程序
Python
1
star
33

SimpleImageTagger

一个简单的图片标注应用,基于web技术
HTML
1
star
34

STest

[自用]简单的speedtest
Rust
1
star
35

DanbooruViewer

Danbooru查看器
Kotlin
1
star