zoukankan      html  css  js  c++  java
  • 物联网 GUI 开发套件 AWTK-IOTJS

    一、介绍

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

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

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

    二、编译

    • 下载编译 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 没编译过。

    六、内部实现文档

  • 相关阅读:
    Azure HPC Pack Cluster添加辅助节点
    Azure HPC Pack 辅助节点模板配置
    Azure HPC Pack配置管理系列(PART6)
    Windows HPC Pack 2012 R2配置
    Azure HPC Pack 节点提升成域控制器
    Azure HPC Pack VM 节点创建和配置
    Azure HPC Pack 部署必要条件准备
    Azure HPC Pack 基础拓扑概述
    Azure VM 性能计数器配置
    Maven私仓配置
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13332991.html
Copyright © 2011-2022 走看看