(实验性)在Android上运行Mirai-console
关于mirai项目的一切请点击这里
仅Android 8及以上可用
相比使用Termux或者是Linux Deploy等应用运行mirai的方案,该项目提供的方案具有更好的性能以及更少的资源占用,但可能存在兼容性问题
更多信息请加QQ群655057127了解
- 兼容mirai-console插件(实验性)
- 带验证码的登录处理
- 内置Google d8 dex编译器,可直接编译JVM的console插件在Android运行(实验性)
- lua脚本接口(测试版)
- 网络掉线提醒
目前MiraiAndroid已支持lua脚本,感谢lua-mirai项目
以下是一个简单的示例
Event.onLoad = function(bot)
print("载入bot" .. bot:getId() .. "成功")
-- 好友消息监听
bot:subscribeFriendMsg(function(bot, msg, sender)
if msg:find("夸我") then
sender:sendMsg(Msg():setQuote(msg) ..
net.get("https://chp.shadiao.app/api.php"))
end
if msg:find("骂我") then
sender:sendMsg(Msg():setQuote(msg) ..
net.get(
"https://nmsl.shadiao.app/api.php?level=min&lang=zh_cn"))
end
end)
-- 群消息监听
bot:subscribeGroupMsg(function(bot, msg, group, sender)
if msg:find("夸我") then
group:sendMsg(Msg():setQuote(msg):appendAt(sender) +
net.get("https://chp.shadiao.app/api.php"))
end
if msg:find("骂我") then
group:sendMsg(Msg():setQuote(msg):appendAt(sender) ..
net.get(
"https://nmsl.shadiao.app/api.php?level=min&lang=zh_cn"))
end
if msg:find("骂他") then
local at
for k, v in pairs(msg:toTable()) do
if v:find("mirai:at") then
at = v
break
end
end
group:sendMsg(at ..
net.get(
"https://nmsl.shadiao.app/api.php?lang=zh_cn"))
end
if msg:find("复读") then group:sendMsg(msg:setQuote(msg)) end
if msg:find("撤回") then
msg:recall()
-- 或 msg:getSource():recall()
-- 或 group:recall(msg)
end
if msg:find("hso") or msg:find("色图") or msg:find("不够色") then
local hso = net.get("https://api.lolicon.app/setu/"):match(
'"url":"(.-)"'):gsub("\\", "")
group:sendMsg(Msg():appendImage(hso, group))
end
end)
end
Event.onFinish = function() print("脚本被卸载!") end
--[[
消息构造方式:使用Msg() 或 Msg("内容") 或 字符串 "纯文本消息"
消息拼接方式:使用appendXXX 或 + 或 .. 进行拼接
如 Msg("hello"):appendText("world") + "lua" .. Msg():appendImage("http://xxxxx",sender)
消息处理:支持使用lua的所有标准字符串处理函数
如:msg:find("pattern") --寻找文本
或 string.find(msg,"pattern")
]]
这个脚本实现了最简单的回复和网络请求功能,更多功能请看lua-mirai项目介绍
你可以在脚本管理界面点击右上角直接添加脚本到MiraiAndroid
目前该功能仍在开发中
你有两个办法安装插件
这是最简单的方式。app切换到插件管理点击右上角选择即可,你也可以使用系统文件选择器直接打开jar文件
请按照以下方法操作
- 找到
d8编译器的运行脚本
d8工具已在新版Android sdk中自带,它就在build-tools中对应版本的文件夹下。在Windows平台他是一个bat文件
- 编译
打开终端,使用以下命令编译
d8.bat --output 输出文件.jar 源文件
输出文件扩展名必须是jar或者是zip
- 复制资源
使用压缩软件打开源jar文件,将里面的plugin.yml,META-INF和其他资源文件(除存放class文件夹的其他文件)复制到新的jar文件内
- 安装插件
将上一步的新的jar文件复制到手机的/sdcard/Android/data/io.github.mzdluo123.mirai.android/files/plugins/
重启即可使用插件,当然部分插件可能也会存在兼容性问题
以下插件由群友测试未发现问题,你可以到群内下载
- mirai-api-http
- HsoSe
- keywordReply
- forward