ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

vivo蓝河操作系统进阶指南-》表盘

2023-11-14 10:41:42  阅读:204  来源: 互联网

标签:


概述

表盘指默认开机首屏的界面,可分为指针表盘和数字表盘,除了查看时间,表盘还可以给用户提供展示计步、心率、电量、天气等关键信息。

系统会内置一些表盘,同时也支持第三方开发,用户可以根据喜好通过长按切换选择表盘。

表盘项目结构

一个表盘项目包含:描述项目配置信息的manifest 文件,一个描述表盘界面的ux 文件,以及引用的图片资源文件,典型示例如下:

应用根目录

.
├── README.md
├── package.json
├── sign
│   ├── certificate.pem
│   └── private.pem
└── src
    ├── app.ux
    ├── manifest.json
    └── watch3000
        ├── assets
        │   ├── aaa.png
        │   └── bg.png
        ├── edit.ux
        └── index.ux

manifest 文件

manifest.json 文件中包含了表盘信息描述、接口声明等

manifest

属性 类型 默认值 必填 描述
package String - 表盘包名,确认与原生应用的包名不一致,包名须保证唯一,推荐采用 com.company.watch 的格式,如:com.company.watch.demo
versionName String - 表盘版本名称,如:"1.0"
versionCode Integer - 表盘版本号,从1自增,推荐每次重新上传包时versionCode+1
config Object - 系统配置信息,详见下面说明
router Object - 路由信息,详见下面说明
deviceTypeList Array<String> watch 可选值有:watchwatch-squarewatch-roundtv , carphone

config

用于定义系统配置和全局数据。

属性 类型 默认值 描述
designWidth Integer 466 页面设计基准宽度,根据实际设备宽度来缩放元素大小

router

用于定义页面的组成和相关配置信息,如果页面没有配置路由信息,则在编译打包时跳过。

属性 类型 默认值 必填 描述
watchfaces Object - 页面配置列表,key 值为表盘目录(命名为watch+表盘 id,对应表盘目录名,例如表盘 id 为 3000,则 key 为 watch3000, 对应 watch3000 目录),value 为该表盘详细配置 ,详见下面说明

router.watchfaces[watchPath]

用于定义单个表盘页面信息。

属性 类型 默认值 必填 描述
id Integer - 表盘唯一标识,由服务端生成
name String - 表盘名称,用于在表盘商店、切换选择等显示的名称
component String - 表盘对应组件名,与 ux 文件名保持一致,例如'index' 对应 'index.ux'
edit String '' 为空字符串 '' 时,表盘为不可编辑表盘;为非空字符串值时,代表表盘目录下编辑表盘页面的路由名称
features Array - 表盘用到的 features 全部在此配置,注意与蓝河应用的配置区别
params Object - 表盘参数,详见下面说明
params

表盘特有参数,用于表盘框架加载表盘和展示列表。

属性 类型 默认值 必填 描述
previewImage [String] - 字符串数组,数组每一项代表预览图片路径,用于在表盘商店、切换选择等显示的预览图,预览图片的路径格式为:local://包名/path
hpw Integer - 高功耗提醒,0-无高功耗提醒,1-需要高功耗提醒,默认为 0

示例:

{
  "package": "com.vivo.watch.sample",
  "versionName": "1.0.0",
  "versionCode": 1,
  "config": {
    "designWidth": 466
  },
  "router": {
    "watchfaces": {
      "watch3000": {
        "id": 3000,
        "name": "表盘示例",
        "component": "index",
        "edit": "edit",
        "features": [
          {
            "name": "blueos.app.router"
          }
        ],
        "params": {
          "previewImage": ["assets/aaa.png"],
          "hpw": 0
        }
      }
    }
  }
}

ux 文件

index.ux 文件中包含了表盘界面描述、样式定义和业务逻辑代码,最终会编译为 js 文件,在运行时中以挂件组件的形式进行加载

生命周期

onInit

监听表盘初始化。当表盘数据完成初始化时调用,只触发一次

onReady

监听表盘界面创建完成。当表盘界面完成创建可以显示时触发,只触发一次

onDestroy

监听表盘退出。当表盘即将退出销毁时触发

onShow()

监听表盘返回前台,表盘返回前台时调用

onHide()

监听表盘退到后台,表盘退到后台时调用

<template>
  <div class="wrap">
    <!-- 表盘界面 -->
  </div>
</template>
<script>
  // 业务逻辑代码
  export default {
    // 初始化数据
    data() {
      return {}
    },
    // 生命周期
    onInit() {},
    onShow() {},
    onHide() {}
    // 自定义方法
    refreshTime() {}
  }
</script>
<style>
  /* 样式描述 */
</style>

标签:
来源:

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有