爱智应用开发起步阶段

EdgerOS 2021-09-22 14:16:52

起步

本章主要介绍如何快速创建、部署一个爱智应用。通过本章的学习,开发者可以轻松的开发一个 Hello World,并发布到爱智世界。

#环境准备

本章主要介绍开发爱智应用的工具准备和工具配置。

#操作步骤 

1.安装 Visual Studio Code

下载并安装 Visual Studio Code(opens new window) 工具。

2.安装 EdgerOS 扩展插件

在 VSCode 中 下载 EdgerOS 扩展插件 并安装。开发者可通过插件获取爱智应用开发模板,以及在爱智设备上打包、上传、安装或更新爱智应用的能力。

3.安装 EdgerOS 安全证书

在开发环境中 安装 EdgerOS 安全证书

 

#创建应用

本章主要介绍如何使用 EdgerOS 扩展插件快速创建出爱智应用,以及工程文件详解。

#前提条件

完成 环境准备

#操作步骤

  1. 打开 Visual Studio Code,点击插件 EdgerOS>创建项目,选择所需的模板后点击应用

注意:

默认模板源为 github,若模板无法加载可按照以下方式切换模板源:点击 VSCode 左下方的管理按钮,选择设置>扩展> EdgerOS,将 Template Source 切换为 Gitee,然后在创建模板页面点击刷新模板信息按钮即可。

  

 

     2.参考表 1 填写模板参数,填写完成后点击立即创建按钮,完成应用创建。

注意:

创建完成后需进入创建的项目根目录,执行 npm install 命令安装依赖包。

  1. 表 1 创建应用参数模板

    参数说明取值样例
    项目名称该项目的工程文件名称test
    包名软件包名称com.example.myapp
    项目描述简要说明项目用途测试项目
    保存路径项目在本地保存路径-
    版本号应用的版本号0.0.1
    提供商 ID开发者 ID (从开发者网站个人信息查询)479ace68109611ecbf6b00163e163bca
    提供商名称开发者 ID 对应的用户名acoUsername
    提供商邮箱开发者的邮箱example@example.com
    提供商手机开发者的手机号123456789
    其他项:在新窗口打开项目是否在新的 VScode 窗口打开项目-

     

# 创建示例

  1. 以创建 Vue 应用为例,打开已创建的项目工程,在 public 目录下打开 index.html,修改其内容如下:

    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <meta http-equiv="X-UA-Compatible" content="IE=edge">
      <meta name="viewport" content="width=device-width, initial-scale=1.0">
      <title>Hello EdgerOS</title>
      <script src="./vue/vue.min.js"></script>
    </head>
    <body>
      <h1>Hello EdgerOS</h1>
      <div id="app">
        Counter: {{ counter }}
      </div>
      <script>
       var app = new Vue({
         el: '#app',
         data() {
           return {
             counter: 0
           }
         },
         mounted() {
           setInterval(() => this.counter++, 1000);
         }
       })
      </script>
    </body>
    </html>
  2. 修改完毕并保存后,一个最简单的 Vue 示例就创建完成了。

# 补充说明

#文件结构介绍

创建应用项目后会在项目目录下生成一个文件夹(文件夹名称为项目名称),作为项目根目录。这个文件夹中已经包含了项目配置文件与示例页面的初始代码,主要结构如下:

├── assets          资源文件夹                   
├── routers         路由信息 
├── public          静态页面文件
├── views           模板页面
├── eslintrc.json   eslint 配置文件
├── edgeros.json    edgeros 应用配置文件
├── main.js         程序入口
├── jsconfig.json   代码补全配置文件
└── package.json    依赖包的管理

#edgeros.json介绍

edgeros.json 示例

{
    "name":"default",
    "bundleid": "com.example.myapp",
    "ignore_modules": [
        "@edgeros/eslint-plugin-jsre",
        "@edgeros/jsre-types"
    ],
    "ignore_path": [
        "./test/**",
        "./temp/**"
    ],
    "assets": {
        "ico_big": "assets/big.png",
        "ico_small": "assets/small.png",
        "ico_widget": "assets/widget.png",
        "splash": "assets/splash.png"
    },
    "program": {
        "gss": false,
        "log": "console",
        "will": false,
        "reside": false,
        "mesv": "1.0.0",
        "resource": "public",
        "experimental": false
    },
    "loading":{
        "splash":"splash",
        "background":"#000000",
        "animation":"enlarge"
    },
    "vendor": {
        "id": "479ace68109611ecbf6b00163e163bca",
        "name": "mycompany",
        "email": "example@example.com",
        "phone": "123456789",
        "fax": ""
    },
    "update": {
        "remove": [
            "public"
        ]
    },
    "widget": [
        {
            "ico": "ico_widget",
            "name": "My Widget",
            "path": "widget",
            "rows": 2,
            "columns": 2,
            "category": "Demo"
        }
    ]
}

注意:

edgeros.json 是 VScode EdgerOS 开发插件中的一项配置文件,用于表明此文件的根目录下是一个爱智应用项目。在编译过程中,VSCode 插件会根据 edgeros.json 的配置进行动态编译,并生成 desc.json 文件。desc.json 是编译后产生的文件,仅保留了爱智应用的必要描述。

 

edgeros.json 字段

字段类型描述用途
name字符串App 名称在爱智世界中展示时的应用名称
bundleid字符串App 的包名App 包名 (bundleid),建议使用反域名序列,例如 com.example.myapp
ignore_modules字符串module 名称过滤不参与打包的 module 名称

ignore_path

字段类型描述用途
ignore_path字符串字符串路径过滤不参与打包的文件路径

assets

字段类型描述用途注意事项
ico_big字符串App 必须的高清图标的资源路径暂未使用必须存在于软件包的根目录下且为 PNG/JPG/JPEG 格式;
在深色模式和浅色模式下必须保持清晰;
图标尺寸为 160*160(px) 至 240*240(px);
文件大小不超过 100 KB。
ico_small字符串App 必须的小图标的资源路径用于 App 桌面图标的圆角矩形图片必须存在于软件包的根目录下且为 PNG/JPG/JPEG 格式;
在深色模式和浅色模式下必须保持清晰;
图标尺寸为 160*160(px) 至 180*180(px);
文件大小不超过 100 KB。
ico_widget字符串可自定义名称的其它可引用的资源此处 ico_widget 定义 widget 中图标图片文件的路径-
splash字符串可自定义名称的其它可引用的资源此处 splash 定义欢迎页图片文件的路径格式为 PNG/JPG/JPEG/GIF;
文件大小不超过 2048 KB。

program

字段类型默认值权限申请描述用途
gss选填,布尔值false-相同开发商 (vendor.id) 发布的所有 App 可通过 gss 通信,不同开发商的 App 通过 zone 隔离;系统服务的 zone 为空;App 无法创建空的 zone用于控制同一开发商 App 间的通信
log选填,字符串console-"file":保存日志到文件;日志文件有两个,写满后自动滚动输出到另外一个;"null":不输出任何日志;"console":仅允许在开发调试阶段使用用于控制日志的输出方式
will选填,布尔值false需要App 不会被立即杀死,以便完成自己的任务用于控制 App 的遗嘱权限
reside选填,布尔值false需要常驻内存权限,比如说提供 widget 的 App用于控制 App 的常驻内存权限
mesv必填,整数数组N/AN/A整数数组 Minimal Edger system version,即最低兼容的 EdgerOS 版本填写最低兼容的 EdgerOS 版本
resource必填,字符串publicN/A指向应用程序包内的 Web 前端静态资源文件夹EdgerOS 将提供预加载服务,加速应用启动速度
experimental选填,布尔值falseN/A表示该应用是否是一个实验室应用用于控制 App 是否为一个实验室应用

loading

字段类型描述用途
splash字符串splash 引用 assets 字段中的资源App 加载首屏的图片文件,引用 assets 字段内定义资源文件的字段名
background字符串#000000 格式的颜色编码值App 加载首屏的图片文件的背景色
animation字符串enlarge 动画效果:扩大App 加载完成后,首屏图片的退出动画效果

update

类型字段可选字段描述用途
数组remove-自动清理目录应用升级时,系统自动清理的目录集合

widget

字段类型字段说明描述用途
ico字符串必填widget 图标,例如:ico_widgetwidget 图标,引用 assets 字段内定义的资源文件
name字符串必填widget 显示名称用于记录 widget 图标名称
path字符串必填widget page URL 路径,最终会与 App 的 hostname 拼接成完整 URL用于记录 widget 的加载路径
rows数字必填widget 占用行数用于记录 widget 占用桌面栅格的行数
columns数字必填widget 占用列数用于记录 widget 占用桌面栅格的列数
category字符串可选widget 所述分类, 多个 widget 可属于一个组,EdgerOS 会预定义一些分类,没有指定分类则分类名以 name 代替记录 widget 的分类,可以从 EdgerOS 的分类里选择,如果没有指定分类则分类名以 name 代替

vendor

字段类型字段说明描述用途
id字符串必填系统为用户生成的 ID系统为用户生成的 ID,可以在爱智开发者平台的个人信息中查看,例如:479ace68109611ecbf6b00163e163bca
name字符串必填软件开发商名称用于记录 App 开发者的用户名或者开发厂商的名称
email字符串必填软件开发商的联系电子邮件地址用于记录 App 开发商的电子邮件地址
phone字符串可选软件开发商的联系电话用于记录 App 开发商的联系电话
fax字符串可选软件开发商的传真号码用于记录 App 开发商的传真号码

 

#部署应用

本章主要介绍如何将爱智应用部署到爱智设备。

#前提条件

  • 准备一台 Spirit 1 并激活,具体步骤请参考 Spirit 1 包装盒内附带的安装指南。
  • 完成 环境准备
  • 完成 创建应用

# 操作步骤

步骤 1:开启开发模式

  1. 在 PC 端连接 “EOS-xxx” 无线网络(网络名称请从 Spirit 1 设备底部的标签获取)。
  2. 在浏览器输入 https://192.168.128.1/ (opens new window),使用管理员身份的翼辉 ID 或设备密码进行登录。
  3. 在爱智桌面点击设置>开发模式,打开开发模式开关,并获取开发密码。

 

步骤 2:添加设备

  1. 在 VSCode 中打开已创建的应用项目,点击EDGEROS>设备管理>添加设备按钮(爱智设备的默认局域网 IP :192.168.128.1)。
  2. 填写设备 IP设备名称开发密码 ,然后点击添加设备按钮。

步骤 3:部署应用

点击设备菜单右侧的安装 EdgerOS App按钮,应用将自动打包并发布至设备桌面,在设备桌面可以看到爱智应用的桌面图标,点击即可进行访问。

步骤 4:应用打包流程(可选)

如果您的 App 已开发配置完成,需要使用 EdgerOS 扩展插件进行打包,请按照以下步骤操作。

  1. 在 VSCode 中打开应用,点击 EDGEROS >其他功能>构建安装包,即可完成打包。

     2.完成打包后在应用项目文件中点击 temp,即可找到应用的包,同时在本地按照右下角提示的路径也可以找到应用的包。

创建项目

注意:

爱智开发者平台支持上传 eap 和 zip 两种格式的包,默认为 eap 格式。如果要更改插件打包的格式请打开文件>首选项>设置,在设置窗口中点击用户>扩展> EdgerOS ,打开 EdgerOS 插件的 Build Suffix 选项,在下拉框中选择要更改的文件后缀即可。

创建项目

 创建项目

 

...全文
834 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

1,585

社区成员

发帖
与我相关
我的任务
社区描述
爱智开发者平台是一个开放的物联网平台,通过爱智世界,应用开发者可以把自己的应用分发到亿万用户的设备上,硬件开发者能够把设备能力开放给海量的开发者,让优质的应用脱颖而出,为用户提供更优秀的使用体验。
边缘计算物联网javascript 企业社区
社区管理员
  • EdgerOS
  • Lumos_zbj
  • dayinfinite
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧