LuaMirai安卓客户端,基于Jetpack Compose构建

Overview

LuaMirai For Android

LICENSE QQ Group

LuaMirai安卓客户端,基于Jetpack Compose构建。

logo

下载

App Center

https://install.appcenter.ms/users/ooooonly/apps/luamirai/distribution_groups/public

主要功能

  • 完全可视化的多脚本管理功能

  • 强大的多Bot可视化构建及管理界面,对Bot构建参数完全控制

  • 可视化日志系统,自定义过滤参数

  • 脚本统一下载中心

  • MiraiConsole插件兼容化

License

GNU AGPLv3

本项目仅供学习参考,禁止用于任何商业用途。任何单位或个人认为本项目可能涉嫌侵犯其合法权益,应该及时提出反馈,我们将会第一时间对违规内容给予删除等相关处理。

Comments
  • 在线程内使用Bot相关代码闪退

    在线程内使用Bot相关代码闪退

    Describe the bug 未知原因,在thread使用Bot相关代码会导致整个软件层的闪退 包括但不限于 ①直接使用Bot(QQ号) ②变量赋值Bot对象并调用

    To Reproduce ①编写对应代码(thread代码套Bot代码)

    thread(function()--线程
      --原本有while,后来用了sleep也不好使
      --因此删除了while true do,但不影响闪退
      g=Bot(qq):getGroup(群号)
    end)
    

    ②导入脚本并(在有Bot在线时)执行 ③恭喜,闪退了

    Expected behavior 没有症状,直接闪退,且没有错误日志

    Screenshots 由于前面是线程执行loadstring/loadfile内包含Bot指令(脚本前面给mybot赋值了自动获取的Bot对象,因此此截图仍然适用) Screenshot_20220823_121510(注:前面有调用过变量执行Bot命令,读取文件执行会闪退,而图片问题虽不与更改后的Issues内容相关,但也可能是在线程中使用loadstring出现的部分代码无法执行的问题) Screenshot_20220823_121344 Screenshot_20220823_121641 (注:没有执行os.exit)

    Desktop (please complete the following information):

    • OS: 无
    • Browser 无
    • Version 无

    Smartphone (please complete the following information):

    • Device: HUAWEI EMUI10
    • OS: Android 10
    • Browser: Via
    • Version 4.4.0

    Additional context

    bug 
    opened by HelloMitsuha 1
  • 某些方法无法调用

    某些方法无法调用

    Describe the bug 以下均为java.lang.reflect.InvocationTargetException异常 执行已存在的方法出错

    event.group:setName("测试")--修改群名称?
    

    在执行下面的代码时出现异常

    local mb=event.group:get(tonumber(任意在群里的QQ号))--转换成Member以执行
    event.group:sendMessage("尝试执行中...")
    local time=60*60*60*24*29--简易计算
    
    mb:mute(time)--禁言(异常处)
    

    To Reproduce Steps to reproduce the behavior: 对任意Member调用方法mute即可,而且不局限于禁言,部分方法都会出现此异常(比如代码中出现但未在文档中出现的Group:setName(String)也无法调用)

    Expected behavior 出现java.lang.reflect.InvocationTargetException错误,无法执行

    Screenshots image image image image image

    Desktop (please complete the following information):

    • OS: null
    • Browser null
    • Version null

    Smartphone (please complete the following information):

    • Device: Android
    • OS: Android 9
    • Browser via
    • Version 1.0-alpha5

    Additional context 为什么存在的方法也无法调用啊? image image

    opened by HelloMitsuha 4
  • 某些情况下无法调用中文函数

    某些情况下无法调用中文函数

    Describe the bug 无法调用已定义的(中文名)函数?

    To Reproduce Steps to reproduce the behavior: ①在脚本任意位置编写(function xxx() end , xxx={["xx"]=function() end}(这个有时候不行) 或 xxx=function() end 形式) ②调用 ③在绝大多数情况下都会出错:attempt to index ? (a nil value)

    我已将错误信息在必应搜索,但未能找到原因

    Expected behavior 只能构造,无法调用(大多数情况,使用table构造的可以调用,在某些情况(未知)也会失效)

    Screenshots IMG20220625214413 IMG20220625214236 IMG20220625214604

    Desktop (please complete the following information):

    • OS: null
    • Browser null
    • Version null

    Smartphone (please complete the following information):

    • Device: Android
    • OS: Android 9
    • Browser via
    • Version 1.0-alpha5

    Additional context 建议还是修一下吧,我这边写脚本需要,为了方便我使用中文,如果修不了那也罢了,谢谢作者

    opened by HelloMitsuha 4
  • 脚本方面的建议

    脚本方面的建议

    Is your feature request related to a problem? Please describe. 我在做脚本的时候经常需要reload,但是需要回去手动开关,而且脚本位置在内置数据目录("/data/data/com.ooooonly.lma/flies/scripts"),需要root权限才能编辑,而且以数字命名,不易分辨

    Describe the solution you'd like ①重载脚本 实时检测(不太现实) ②脚本位置以及编辑 可以尝试转移外置存储(如"/sdcard/LuaMirai/scripts/"),并不使用随机数字命名(建议在添加脚本时让用户自行为文件取名)

    Describe alternatives you've considered ①为脚本提供新代码:reload()--重新载入脚本 ②内置脚本代码编辑器

    Additional context

    opened by HelloMitsuha 2
  • 脚本内无法使用io库,require、loadfile和dofile等函数加载外部文件

    脚本内无法使用io库,require、loadfile和dofile等函数加载外部文件

    使用的是最新版LuaMirai的apk包 问题一:io库的读写无法使用 导入脚本时,已授予一个储存权限,但脚本内无法使用io库的写入文件功能。需要自己去AndroidManifest.xml中添加<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />权限,添加完成后手动授权可使用io库。 该问题出现时无报错日志。 问题二:require、loadfile和dofile等函数加载外部文件 1.脚本内容 共两个脚本,分别为“测试.lua”和“mod.lua”,存放在/sdcard/RotoGame/scripts/目录下,“测试.lua”作为主文件导入软件内加载。 “测试.lua”内容如下:

    -- LuaMiraiScript --
    -- name: 测试
    -- author: DM
    -- version: 1.0
    -- description: 测试
    -- /LuaMiraiScript --
    
    print(package.path)
    --[[local a = "/sdcard/RobotGame/?.lua;/sdcard/RobotGame/scripts/?.lua;/sdcard/RobotGame/scripts/components/?.lua;"
    a = a.."/sdcard/RobotGame/scripts/entities/?.lua;/sdcard/RobotGame/cache/?.lua;"
    package.path = a
    print(package.path)]]
    require("mod")
    

    “mod.lua”的内容如下:

    M = {}
    function M:P(arg)
      print(arg)
    end
    
    return M
    

    使用require导入执行时报错内容如图: Screenshot_20220603_141857_com ooooonly lma 使用loadfile导入执行时报错如图: Screenshot_20220603_142905_com ooooonly lma 使用dofile导入执行时报错如图: Screenshot_20220603_143110_com ooooonly lma

    使用package.path 或者将文件拷贝到/data/user/0/com.ooooonly.lma/files/scripts/目录也无济于事。

    问题推断:不知道是你项目对接LuaJ出的问题,这里比较推荐是参考GameGuardian中对LuaJ的更改,这是比较成功的案例。

    期待你对本次情况的优化

    enhancement 
    opened by JealousCat 0
Owner
OOOOONLY
A mystery.
OOOOONLY
基于Jetpack Compose实现的一款集新闻、视频、美图、天气等功能的资讯App,持续完善中...

爱看App 基于Jetpack Compose实现的一款集新闻、视频、美图、天气等功能的资讯App,持续完善中... 如果喜欢的话希望给个 Star 或 Fork ^_^ ,谢谢 项目截图 核心功能 核心技术 下载体验 点击 下方二维码下载(每日上限100次,如达到上限,还是 clone 源码吧!✧

null 61 Nov 3, 2022