v3.1.N
插件文档Util 版本:v3.1
本页内容
提示
- 本文档部分说明格式为 “变量名 (数据类型): 说明” 或 “数据类型: 说明”
- 标有 X 的表示已废除,相关 API 已被移除
- 标有 * 的表示必须文件、方法 或 变量
- 软件写的比较随意,因此您可以随意调用API,就像是修改软件本身一样,此文档只是起帮助理解的作用。
警告
已废除的 API 无法继续使用,因此您需要进行特殊的判断,请谨慎提高 targetcode
,以免造成用户数据损失
建议最低的最低适配软件版本
我们强烈建议从 v5.1.0(51099)或以上 开始适配,因为在 v5.1.0 发生了巨大变化,大到开发者自己都不知道改了啥。本文档有非常多地方待修正或者补充,如果您发现了某处有问题,希望您可以联系我们以修复。
危险
此版本文档还有许多部分待完善。但目前已经停止维护
手动导入
- 打开文件管理,进入
内部存储/Android/media/com.jesse205.aidelua2/files/plugins
,如果没有此文件夹就手动新建一个 - 下载插件(扩展名通常为
zip
或alp
,当然也不排除还有其他扩展名) - 使用 zip 格式打开插件,打开
init.lua
文件,复制packagename
(包名) 的参数(=
后面,不带引号) - 在
plugins
文件夹 里面新建文件夹,重命名为 插件的packagename
(就是刚刚复制的文字) - 解压插件内所有的文件,到第4步新建的文件夹
- 重启 AideLua
注意事项:
- 目标版本和最低版本请按实际情况填写,最低为
50099
- 扩展名应为
alp
(Androlua+ 扩展) 或zip
- 为了防止污染全局变量,插件内直接赋值为插件的局部变量。如要修改全局变量,请使用
_G.xxx=xxx
通用 API
警告
尽量避免使用 Jesse205 库。因为 Jesse205 库每次改动都比较大,很容易引起插件报错。
提示
Aide Lua 的插件通常以植入代码的方式实现。
您可以在 Github 或者 Gitee 上查看此程序的源码,以便编写良好的插件。
table Util
PluginsUtil插件相关 API,也是支持插件运行的模块
变量 | 说明 |
---|---|
_VERSION | string: Util 版本 |
PLUGINS_PATH | string: 插件存放路径 |
PLUGINS_DATA_PATH | string: 插件数据存放路径 |
PluginsUtil.getPluginDataPath(packageName)
获取插件数据目录
参数 | 说明 |
---|---|
packageName | string: 插件包名。 |
PluginsUtil.getPluginPath(packageName)
获取插件目录
参数 | 说明 |
---|---|
packageName | string: 插件包名,如果文件夹名与真正的 init.lua 中的 packagename 不同,则 packageName 传入文件夹名。 |
v5.0.4(50499)+
PluginsUtil.clearOpenedPluginPaths()清除已启用插件列表,用于重新加载插件
string
activityName当前页面 (Activity) 名,可能为 nil
值 | 说明 |
---|---|
main | 主页面 |
settings | 软件设置页面 |
newproject | 新建工程页面 v5.0.4+ |
viewclass | 查看类页面 v5.0.4+ |
about | 关于页面 v5.0.4+ |
layouthelper | 布局助手页面 v5.0.4+ |
javaapi | JavaAPI查看器页面 v5.0.4+ |
getPluginDataPath(packageName)
获取插件数据目录,与 PluginsUtil.getPluginDataPath(packageName)
完全相同
getPluginPath(packageName)
获取插件目录,与 PluginsUtil.getPluginPath(packageName)
完全相同
插件文件说明
文件 v5.1.1+
README.md插件的说明文档
危险
说明文档的文件名只能是 README.md
,不能是 readme.md
、 README.txt
或其他。
* init.lua 文件
插件入口,也用于存放模块信息的文件
变量 | 说明 |
---|---|
* appname | string: 插件名 |
* packagename | string: 插件包名 |
* appname | string: 插件名 |
* appver | string: 插件版本名 |
* appcode | number: 插件版本号 |
* packagename | string: 插件包名 |
mode | string: 模式,默认为 "plugin" |
utilversion | string: Util版本,此变量不起任何作用,当前为 "3.1" |
thirdplugins | table (list): 需要安装的第三方库 内容: 插件的包名 |
supported2 | table (map): 支持的APP列表 索引: 软件代号 ( apptype ) 内容: table (map): 支持的版本,mincode为最低版本,targetcode为最高版本 |
events | table (map): 全局事件 |
已弃用
变量 | 说明 | 原因 |
---|---|---|
* minemastercode Util v3.1 废除 | number: 最低支持的APP版本号。 | 多个宿主只能使用相同的版本 |
* targemastercode Util v3.1 废除 | number: 目标适配的APP版本号。 | 多个宿主只能使用相同的版本 |
supported Util v3.1 废除 | table (list): 支持的APP列表。此变量在 Util 版本 3.1 弃用。 | 未指定宿主版本 |
提示
全局事件与独立事件基本一致。
但与独立的事件相比,第一个参数为页面名称,但是很可能为 nil
)
警告
init.lua
中运行中不会有各种内置变量,只有在运行后会将环境表设置为 metatable
,自动取 _G
中的值
彩蛋
软件代号 ( apptype ) | 代指软件 |
---|---|
aidelua | Aide Lua (Pro) |
eddelua | Edde Lua (截止目前此app不支持插件) |
alstudio | Android Lua Studio (截止目前此app仅存于想象) |
yunchu_jesse205 | 云储 优化版 (截止目前此app不支持插件) |
eddeyunchumanager | Edde 后台管理 (截止目前此app仅存于想象) |
userstatistics | 用户统计 (截止目前此app仅存于想象) |
goapk_jesse205 | GoApk (截止目前此app仅存于想象且已停止) |
highapk | 良心APK (截止目前此app仅存于想象) |
eddebrowser | Edde 浏览器 (截止目前此app仅存于想象) |
eddeconnect | Edde 互联 (截止目前此app仅存于想象) |
eddestudy | Edde 学习桌面 (截止目前此app仅存于想象) |
eddemusic | Edde 音乐(截止目前此app仅存于想象) |
eddevideo | Edde 视频(截止目前此app仅存于想象) |
eddebook | Edde 阅读(截止目前此app仅存于想象) |
hellotool | 哈兔Box (截止目前此app不支持此类型插件) |
androidbox | 安卓工具箱 (截止目前此app仅存于想象) |
文件
main.lua插件主页面
参数顺序 (...) | 说明 |
---|---|
1 | 项目路径 |
2 | 文件路径 |
文件夹
config/events/存放各个页面的独立事件的文件夹
- 文件扩展名:
aly
(不支持lua
) - 文件名称:
<页面标识>.aly
- 文件示例:
main.aly
、settings.aly
...... - 更多请见
page
目录