目录

系统数据开放

功能概述

开放以下系统数据和控制功能,以制作创意主题。

系统数据:

控制功能:

功能说明

支持应用位置:锁屏、桌面和桌面万象小组件。

支持设备类型:手机、平板、折叠屏。

系统数据变量

[h2]系统数据基础变量

变 量

类  型

注 释

systemVersion

字符串

设备版本。

说明:

不支持获取旧荣耀手机的设备版本。

storageFree

字符串

设备可用空间。结果四舍五入取整,单位:显示实际单位

storageFreeNum

数值

设备可用空间。结果四舍五入取整,单位:MB(不显示)。

storageTotal

字符串

设备总空间。结果四舍五入取整,单位:显示实际单位

storageTotalNum

数值

设备总空间。结果四舍五入取整,单位:MB(不显示)。

vibration

数值

声音模式。2:响铃;1:震动;0:静音。超出[0,2]取值范围不生效。

flashlight

字符串

手电筒开关状态。0:关闭;1:打开。

automaticRotary

字符串

自动旋转开关状态。0:关闭;1:打开。

<Text name="t1" color="#ffffff" format="手机版本:%s" paras="#systemVersion" size="50" x="100" y="300" />
<Text name="t5" color="#ffffff" format="手机可用空间:%s" paras="#storageFree" size="50" x="100" y="900" />
<Text name="t6" color="#ffffff" format="手机总空间:%s" paras="#storageTotal" size="50" x="100" y="1000" />

或

<Text name="t1" color="#ffffff" format="手机版本:%s" paras="#systemVersion" size="50" x="100" y="300" />
<Text name="t7" color="#ffffff" format="手机可用空间:%s" paras="#storageFreeNum" size="50" x="100" y="1100" />
<Text name="t8" color="#ffffff" format="手机总空间:%s" paras="#storageTotalNum" size="50" x="100" y="1200" />

[h2]设备开机时长获取 deviceTime

通过建立Var标签,设置name="deviceTime"获取设备开机时长数据。

<Var name="deviceTime" assigning="" />

参 数

类 型

选 项

注 释

assigning

字符串

必填

设备开机时长的显示格式:dd天、dd天HH、dd天HH小时mm分钟。

说明:

显示格式中的文字字符可替换,以dd天HH小时mm分钟这个格式为例,也可以写为dd/HH/mm、dd-HH-mm等。

<Var name="deviceTime" assigning="dd天HH小时mm分钟" />
<Text name="t2" color="#ffffff" format="获取开机时长:%s" paras="#deviceTime" size="50" x="100" y="500" />

[h2]设备开机时长轮询 pollingTime

设置轮询时间间隔后,将按照轮询时间间隔自动刷新设备开机时长数据。

<Var name="pollingTime" time="" />

参 数

类 型

选 项

注 释

time

数值

选填

设备开机时长的轮询时间,单位:分钟,最小值为1,不填即不开启轮询。

<!--1分钟刷新一次设备开机时长-->
<Var name="pollingTime" time="1" />
<Var name="deviceTime" assigning="dd天HH小时mm分钟" />
<Text name="t2" color="#ffffff" format="获取开机时长:%s" paras="#deviceTime" size="50" x="100" y="500" />

[h2]CPU使用率 processCpuRate

通过建立Var标签,设置name="processCpuRate"获取CPU使用率数据。

<Var name="processCpuRate" bit="" />

参 数

类 型

选 项

注 释

bit

数值

选填

保留小数的位数。

说明:
  1. CPU空闲率的小数位数和CPU使用率的小数位数保持一致。
  2. 如果不设置此参数,则默认显示整数。
<Var name="processCpuRate" bit="3" />
<Text name="t3" color="#ffffff" format="获取CPU使用率:%s" paras="#processCpuRate" size="50" x="100" y="700" />

[h2]CPU空闲率 processCpuFree

通过建立Var标签,设置name="processCpuFree"获取CPU空闲率数据。

<Var name="processCpuFree" />
<Var name="processCpuFree" />
<Text name="t4" color="#ffffff" format="获取CPU空闲率:%s" paras="#processCpuFree" size="50" x="100" y="800" />

[h2]音量/亮度进度条 Progress

包括通话音量、屏幕亮度、来电信息通知音量、音乐/视频/游戏音量和闹钟音量。

<Var name="Progress" direction="" mode="" topColor="" bottomColor="" bgSrc="" iconSrc=""    x="" y="" w="" h="" progressWidth=""  iconWidth="" iconHeight="" roundedCorners="" />

参 数

类 型

选 项

注 释

direction

数值

必填

进度条方向。0:水平;1:垂直。

mode

数值

必填

音量或屏幕亮度模式。0:通话音量;1:屏幕亮度;2:来电信息通知音量;3:音乐/视频/游戏音量;4:闹钟音量。

topColor

字符串

必填

顶部进度条颜色。

bottomColor

字符串

必填

底部进度条颜色。

bgSrc

字符串

必填

进度条控件的背景图片。

iconSrc

字符串

必填

滑块图片。

x

数值

必填

进度条位置横坐标。

y

数值

必填

进度条位置纵坐标。

w

数值

必填

进度条控件宽度。

h

数值

必填

进度条控件高度。

progressWidth

数值

必填

进度条宽度,进度条处于背景中间位置,最大值为 h 的一半。

iconWidth

数值

必填

滑块图片宽度。

iconHeight

数值

必填

滑块图片高度。

roundedCorners

数值

选填

进度条圆角,取值范围:0-progressWidth,不填即为直角样式。

<Var name="Progress" direction="0" mode="3" topColor="#550000" bottomColor="#ff0000" bgSrc="jdt.png" iconSrc="hk.png" x="180" y="1605" w="700" h="60" progressWidth="20"  iconWidth="60" iconHeight="40" roundedCorners="20" />

系统数据控制命令

[h2]声音模式改变命令

声音模式正常使用的必要条件:在设置页面打开主题对应的免打扰权限。

声音模式共3种(详见全局变量vibration),支持通过VariableCommand命令改变声音模式。

<VariableCommand name="vibration" expression="(#vibration+1)%3"/> 
<!--通过点击按钮,切换声音模式-->
<Image y="762" x="74" src="moshi.png" srcid="#vibration"/>
<Button y="762" x="74" w="120" h="120">
    <Trigger action="down"> 
         <VariableCommand name="vibration" expression="(#vibration+1)%3"/> 
         <VariableCommand name="vibration" expression="0" condition="gt(#vibration,2)"/>
    </Trigger> 
</Button>

[h2]手电筒开关命令

手电筒开关状态共2种(详见全局变量flashlight),支持通过VariableCommand命令控制手电筒开关。

<VariableCommand name="flashlightValue" expression="#flashlightValue+1" persist="false" />

创建固定变量flashlightValue,每次点击flashlightValue的值+1,同时为变量flashlight重新赋值:如果flashlight的值为0,则重新为其赋值为1;如果flashlight的值为1,则重新为其赋值为0。

<Image x="100" y="1100" w="300" h="150" src="close.png" visibility="eq(#flashlight,0)" />
<Image x="100" y="1100" w="300" h="150" src="open.png" visibility="eq(#flashlight,1)" />
<Button x="100" y="1100" w="300" h="150" >
      <Trigger action="click">
            <VariableCommand name="flashlightValue" expression="#flashlightValue+1" persist="false" />
      </Trigger>
</Button>

[h2]自动旋转开关命令

自动旋转开关状态共2种(详见全局变量automaticRotary),支持通过VariableCommand命令控制手机是否自动旋转屏幕。

<VariableCommand name="automaticRotaryValue" expression="#automaticRotaryValue+1" persist="false" />

创建固定变量automaticRotaryValue,每次点击automaticRotaryValue的值+1,同时为变量automaticRotary重新赋值:如果automaticRotary的值为0,则重新为其赋值为1;如果automaticRotary的值为1,则重新为其赋值为0。

<Image x="100" y="1100" w="300" h="150" src="close.png" visibility="eq(#automaticRotary,0)" />
<Image x="100" y="1100" w="300" h="150" src="open.png" visibility="eq(#automaticRotary,1)" />
<Button x="100" y="1300" w="300" h="150" >
    <Trigger action="click">
        <VariableCommand name="automaticRotaryValue" expression="#automaticRotaryValue+1" persist="false" />
    </Trigger>
</Button>

[h2]音量/亮度进度条加减命令

支持通过音量/亮度进度条加减命令ProgressCommand,进行音量/亮度的加减。

<ProgressCommand mode="" change="" amplitude="" />

参 数

类 型

选 项

注 释

mode

数值

必填

音量或屏幕亮度模式。0:通话音量;1:屏幕亮度;2:来电信息通知音量;3:音乐/视频/游戏音量;4:闹钟音量。

change

数值

必填

进度条加减。0:减;1:加。

amplitude

数值

必填

进度条加减的步进值。参照以下范围进行取值。

  • 通话音量:1-15。
  • 屏幕亮度:4-255。
  • 来电信息通知音量:0-15。
  • 音乐/视频/游戏音量:0-15。
  • 闹钟音量:1-15。
说明:
  1. 步进值是指单次调节进度条时增加或减少的值。
  2. 不同系统的亮度范围可能会有所差异,以上亮度范围仅为参考。
<!--点击按钮减少音乐/视频/游戏音量-->
<Image x="100" y="1600" w="70" h="70" src="subtraction.png" />
<Button x="100" y="1600" w="70" h="70" >
    <Trigger action="click">
       <ProgressCommand mode="3" change="0" amplitude="50" />
    </Trigger>
</Button>

<!--点击按钮增加音乐/视频/游戏音量-->
<Image x="890" y="1600" w="70" h="70" src="addition.png" />
<Button x="890" y="1600" w="70" h="70" >
    <Trigger action="click">
        <ProgressCommand mode="3" change="1" amplitude="50" />
    </Trigger>
</Button>

应用示例

示例一:获取手机版本、手机可用空间、手机总空间数据,同时使用进度条展示手机可用空间占比。

<Var expression="strIndexOf(#storageFree,'GB')-1" name="index1"/>
<Var expression="strIndexOf(#storageTotal,'GB')-1" name="index2"/>
<Var expression="substr(#storageFree,0,#index1)" name="free" type="string"/>
<Var expression="substr(#storageTotal,0,#index2)" name="total" type="string"/>

<Text y="75" x="88" size="62" paras="#systemVersion" format="%s" color="#ffffff"/>
<Text y="167" x="88" size="38" color="#cde969" text="版本号"/>

<Image src="icons.png" y="295" x="73"/>
<Text y="310" x="199" size="43" paras="#storageFree" format="%s可用" color="#ffffff"/>
<Image src="xiegang.png" y="315" x="441"/>
<Text y="310" x="467" size="43" paras="#storageTotal" format="%s" color="#ffffff"/>
<Image src="jindutiao_bg.png" y="379" x="190"/>
<Image src="progress/jindutiao.png" y="379" x="190" srcid="round(((#total-#free)/#total)*10)"/>

示例二:获取手机版本、开机时长、CPU使用率、获取CPU空闲率、手机可用空间、手机总空间等系统数据,支持控制手电筒开关和自动旋转开关,并支持调节音乐/视频/游戏音量。

<Text name="t1" color="#ffffff" format="手机版本:%s" paras="#systemVersion" size="50" x="100" y="300" />

<Var name="pollingTime" time="1" />
<Var name="deviceTime" assigning="dd天HH小时mm分钟" />
<Text name="t2" color="#ffffff" format="获取开机时长:%s" paras="#deviceTime" size="50" x="100" y="500" />

<Var name="processCpuRate" bit="3" />
<Text name="t3" color="#ffffff" format="获取CPU使用率:%s" paras="#processCpuRate" size="50" x="100" y="700" />

<Var name="processCpuFree" />
<Text name="t4" color="#ffffff" format="获取CPU空闲率:%s" paras="#processCpuFree" size="50" x="100" y="800" />

<Text name="t5" color="#ffffff" format="手机可用空间:%s" paras="#storageFree" size="50" x="100" y="900" />
<Text name="t6" color="#ffffff" format="手机总空间:%s" paras="#storageTotal" size="50" x="100" y="1000" />

<Text name="t7" color="#ffffff" format="手电筒开关:%s" paras="#flashlight" size="50" x="100" y="1200" />
<Button x="100" y="1100" w="300" h="150" >
    <Trigger action="click">
        <VariableCommand name="flashlightValue" expression="#flashlightValue+1" persist="false" />
    </Trigger>
</Button>

<Var name="vibration" expression="0"/>

<Text name="t8" color="#ffffff" format="自动旋转开关:%s" paras="#automaticRotary" size="50" x="100" y="1400" />
<Button x="100" y="1300" w="300" h="150" >
    <Trigger action="click">
        <VariableCommand name="automaticRotaryValue" expression="#automaticRotaryValue+1" persist="false" />
    </Trigger>
</Button>

<Image x="100" y="1600" w="70" h="70" src="subtraction.png" />
<Button x="100" y="1600" w="70" h="70" >
    <Trigger action="click">
       <ProgressCommand mode="3" change="0" amplitude="50" />
    </Trigger>
</Button>

<Var name="Progress" direction="0" mode="3" topColor="#550000" bottomColor="#ff0000" bgSrc="jdt.png" iconSrc="hk.png" x="180" y="1605" w="700" h="60" progressWidth="20"  iconWidth="60" iconHeight="40" roundedCorners="20" />

<Image x="890" y="1600" w="70" h="70" src="addition.png" />
<Button x="890" y="1600" w="70" h="70" >
    <Trigger action="click">
        <ProgressCommand mode="3" change="1" amplitude="50" />
    </Trigger>
</Button>