注意:使用时不要开启其他Android虚拟机或任何基于adb的应用/虚拟机
如何部署:
这是一个精简后的Vela JS 快应用项目
① 首先在 AIoT IDE 中安装以下插件:
③ 你可以在IDE的资源管理器下方看到TASK RUNNER,把这一栏拉长,内容默认会被挡住
④ 启动镜像为vela-miwear-watch-5.0的虚拟机,确保一定带有miwear,否则镜像没有Lua环境
⑤ 模拟器成功启动后点击 “运行Lua应用”

⑥ 此时不要操作虚拟机,点击关闭按钮,直接关闭虚拟机

⑦ 再次启动虚拟机,即可正常使用
使用教程:
你的Lua代码,只应出现在项目的 src/lua/app 下,且你的程序主代码只能名为 app.lua

你的其他自制的Lua模块/资源文件也只能放在 src/lua/app 下,在 app 文件夹外的代码文件均不可修改
使用前 切换到LuaDev表盘(按照步骤部署后,你的虚拟机上会出现LuaDev表盘。如果没有,请检查是否有遗忘的步骤)
你的代码主逻辑请写在 M.build 中,可以把M.build看作Main函数
不要改变外部的返回值M和root,以及顶部的变量M
向实机迁移代码时,只需要移除M.build包裹,删除root和M的返回,删除local M = {}
即可将app.lua完整的迁入实机
注意:你不需要迁移app文件夹以外的文件!
为实机开发的应用不要使用api的函数,它不兼容实机
以下函数均为调试重载器的函数,不可在实机使用
api解释:
on_tick(cb) ——重载器的心跳函数
on_align(cb) ——重载器对齐现实时间的事件
now() ——返回当前时间
generation() ——返回当前代际,用于确定代码版本
schedule(ms, fn) ——一个安全的定时器,调用app文件夹外部代码时使用
在app.lua中,编写完你的代码且保存后,在Task Runner中点击 运行Lua应用

虚拟机中会自动同步你的最新代码

关于ADB Files的使用方法:
ADB Files不能与aiot-core同时运行,所以使用前请新建窗口

使用快捷键 Ctrl+Shift+P 输入VSCode指令: adbfs.workspaceInit
你可以在IDE的资源管理器看到

至此你也可以管理虚拟机中的文件了
Lua开发文档在这:https://www.bandbbs.cn/threads/22955/
VelaOS开发技术交流群 1群:748249608
VelaOS开发技术交流群 2群:1072548075
VelaOS爱好者交流群 1群:762879924
VelaOS爱好者交流群 2群:682843907
如何部署:
这是一个精简后的Vela JS 快应用项目
① 首先在 AIoT IDE 中安装以下插件:
- Lua 开发者:sumneko
- ADB Files 开发者:Erol444 ——如果不需要管理虚拟机内文件,可以不装
- Task Runner 开发者:Sana Ajani
③ 你可以在IDE的资源管理器下方看到TASK RUNNER,把这一栏拉长,内容默认会被挡住
④ 启动镜像为vela-miwear-watch-5.0的虚拟机,确保一定带有miwear,否则镜像没有Lua环境
⑤ 模拟器成功启动后点击 “运行Lua应用”

⑥ 此时不要操作虚拟机,点击关闭按钮,直接关闭虚拟机

⑦ 再次启动虚拟机,即可正常使用
使用教程:
你的Lua代码,只应出现在项目的 src/lua/app 下,且你的程序主代码只能名为 app.lua

你的其他自制的Lua模块/资源文件也只能放在 src/lua/app 下,在 app 文件夹外的代码文件均不可修改
使用前 切换到LuaDev表盘(按照步骤部署后,你的虚拟机上会出现LuaDev表盘。如果没有,请检查是否有遗忘的步骤)
代码:
local M = {}
local toast = require('toast')
function M.build(api)
local root = lvgl.Object(nil, {
w = lvgl.HOR_RES(),
h = lvgl.VER_RES(),
}):add_flag(lvgl.FLAG.EVENT_BUBBLE)
local timeLabel = lvgl.Label(root, {
text = os.date("%Y-%m-%d %H:%M:%S"),
align = lvgl.ALIGN.CENTER,
})
timeLabel:set { text_color = 0xC8C8C8 }
local button = lvgl.Label(root, {
text = "Click Me",
-- align = lvgl.ALIGN.CENTER,
w = 100,
h = 30,
x = 233,
y = 300,
border_width = 1
})
button:add_flag(lvgl.FLAG.CLICKABLE)
button:onevent(lvgl.EVENT.CLICKED, function(obj, code)
button:set { text = "Yes", y = 200, x = 133 }
toast.show("click", 1200, root)
end)
api.on_tick(function(epoch)
timeLabel:set { text = os.date("%Y-%m-%d %H:%M:%S", epoch) }
end)
return root
end
return M
你的代码主逻辑请写在 M.build 中,可以把M.build看作Main函数
不要改变外部的返回值M和root,以及顶部的变量M
向实机迁移代码时,只需要移除M.build包裹,删除root和M的返回,删除local M = {}
即可将app.lua完整的迁入实机
注意:你不需要迁移app文件夹以外的文件!
为实机开发的应用不要使用api的函数,它不兼容实机
以下函数均为调试重载器的函数,不可在实机使用
api解释:
on_tick(cb) ——重载器的心跳函数
on_align(cb) ——重载器对齐现实时间的事件
now() ——返回当前时间
generation() ——返回当前代际,用于确定代码版本
schedule(ms, fn) ——一个安全的定时器,调用app文件夹外部代码时使用
在app.lua中,编写完你的代码且保存后,在Task Runner中点击 运行Lua应用

虚拟机中会自动同步你的最新代码

关于ADB Files的使用方法:
ADB Files不能与aiot-core同时运行,所以使用前请新建窗口

使用快捷键 Ctrl+Shift+P 输入VSCode指令: adbfs.workspaceInit
你可以在IDE的资源管理器看到

至此你也可以管理虚拟机中的文件了
Lua开发文档在这:https://www.bandbbs.cn/threads/22955/
VelaOS开发技术交流群 1群:748249608
VelaOS开发技术交流群 2群:1072548075
VelaOS爱好者交流群 1群:762879924
VelaOS爱好者交流群 2群:682843907
附件
最后编辑:
0次