物联网 GUI 开发套件 AWTK-IOTJS 发布

2019年06月11日

一、介绍

awtk-iotjs 将 awtk 和 iotjs 有机结合起来,用 javascript 打通 GUI、网络和硬件,完全采用 javascript 开发物联网应用程序。

关于 iotjs

iotjs 是三星开源的 javascript 物联网开发平台。它为 javascript 应用程序提供了访问硬件、网络、文件系统和异步化的能力,功能类似于 nodejs,但无论是代码体积还是内存需求,iotjs 都要小很多,是用 javascript 开发 iot 设备应用程序的首选。

关于 AWTK

AWTK 全称 Toolkit AnyWhere,是 ZLG 开发的开源 GUI 引擎,旨在为嵌入式系统、WEB、各种小程序、手机和 PC 打造的通用 GUI 引擎,为用户提供一个功能强大、高效可靠、简单易用、可轻松做出炫酷效果的 GUI 引擎。

运行效果截图:

CleanAir-Demo

Meter-Demo

Chart-Demo

MusicPlayer-Demo

 

二、编译

  • 下载编译 iotjs
git clone https://github.com/pando-project/iotjs.git
cd iotjs
./tools/build.py
cd -
  • 下载编译 awtk
git clone https://github.com/zlgopen/awtk.git
cd awtk
scons
cd -
  • 下载编译 awtk-js
git clone https://github.com/zlgopen/awtk-js.git
cd awtk-js
git clone https://github.com/jerryscript-project/jerryscript.git 3rd/jerryscript
scons
cd -
  • 下载编译 awtk-iotjs

准备工作:

目前我不知道如何在 module.json 中指定编译参数,所以只好修改 iotjs/CMakeLists.txt 了。请在倒数第二行增加下面这行代码。

include(../awtk-iotjs/awtk-module/awtk.cmake)

下载编译:

git clone https://github.com/zlgopen/awtk-iotjs.git
cd awtk-iotjs
./build.sh

请确认以上项目均在同一个目录。

三、运行 DEMO

./run.sh demos/buttons.js

四、开发

在开发时可以使用:

  • iotjs 提供的模块。
  • awtk-js 提供的 GUI 控件。
  • 其它第三方模块。

与 awtk-js 主要差异是需要加载并初始化 awtk:

require('awtk').init(320, 480);

完整示例:

require('awtk').init(320, 480);

function applicationInit() {
  var win = TWindow.create(null, 0, 0, 0, 0); 
  var ok = TButton.create(win, 0, 0, 0, 0); 

  ok.setText("ok");
  ok.setSelfLayoutParams("center", "middle", "50%", "30");

  ok.on(TEventType.CLICK, function(evt) {
    var e = TPointerEvent.cast(evt);
    console.log("on click: " + e.x + " " + e.y);

    return TRet.OK;
  }); 

  win.layout();
}

applicationInit()

五、已知问题

  • 只支持 Linux 系统 (Ubuntu >= 16)。
  • 未 awtk-linux-fb 上验证,可能修改一下脚本。

理论上 Windows 平台也是可以的,但是 iotjs 没编译过。

六、内部实现文档

展开阅读全文
37 收藏
分享
加载中
精彩评论
强大👍
2019-06-12 08:02
1
举报
最新评论 (6)
要支持多平台呀
2019-06-12 14:08
0
回复
举报
可否做个docker,降低环境搭建难度
2019-06-12 12:35
0
回复
举报
用ubuntu搭个环境也是很容易的,安装cmake和scons等工具就行了,AWTK的README里有说明。
2019-06-12 13:57
0
回复
举报
强大👍
2019-06-12 08:02
1
回复
举报
看着挺好,不知道用起来怎么样。
2019-06-11 20:13
0
回复
举报
看着挺好,但真要用起来却都不容易。
2019-06-11 17:35
0
回复
举报
更多评论
6 评论
37 收藏
分享
返回顶部
顶部