目录

命令:隔空手势互动<SwingCommand>

功能概述

主题引擎支持在锁屏通过DSL脚本的方式,调用系统的Swing能力识别用户的隔空手势,支持4个动态手势识别:上翻、下翻、抓屏、释放,以及4个静态手势识别:掌型、拳型、剪刀、比心。手势识别能力默认处于关闭状态,可通过变量控制开关状态。若手势识别能力打开,仅当锁屏界面在前台时会注册手势监听,灭屏、锁屏在后台(来电、闹钟)以及解锁进桌面时会自动取消注册手势监听。

仅部分高端机型支持。

创意场景

1、设计石头、剪刀、布互动主题。

2、开合手掌,控制花儿绽放和闭合,通过不同手势,与锁屏元素进行交互。

3、模拟魔术类设计,同一套主题,在A手机抓屏动作让一个形象消失,在B手机释放动作让一个形象呈现。

表1 静态手势

静态手势

图例

掌型

拳型

剪刀

比心

表2 动态手势

动态手势

起始态

终止态

上翻

下翻

抓屏

释放

支持范围

起始规范版本:HarmonyOS 6.1

是否平台特性:是

表3 支持根标签
  

锁屏(Lockscreen)

桌面(Wallpaper)

一镜到底(LongTake)

百变卡片(Widget)

充电动效(ChargingSkin)

是否支持

√

x

x

x

x

表4 支持设备类型
  

直板机

折叠屏

平板

是否支持

√(仅部分高端设备支持)

√(仅部分高端设备支持)

√(仅部分高端设备支持)

XML规范

<SwingCommand enable="1" dynamicTypes="0,1" staticTypes="1,2,3"/>

参数说明

参数

类型

选项

注释

enable

数值

必填

支持数值表达式控制手势识别能力是否打开,0:关闭,非0:打开。默认为0(关闭)

dynamicTypes

字符串

必填

需要识别的动态手势类型(参考全局变量“手势识别”中动态手势类型枚举说明)。多个类型以逗号分隔,如需要使用的动态手势有下翻和抓屏,则填写'0,1'。默认为空,不识别用户的动态手势。

staticTypes

字符串

必填

需要识别的静态手势类型(参考全局变量“手势识别”中静态手势类型枚举说明)。多个类型以逗号分隔,如需要使用的静态手势有石头剪刀布,则填写'1,2,3'。默认为空,不识别用户的静态手势。

1. 同一个脚本中只允许有1个SwingCommand。

2. 动态手势和静态手势同时订阅时,会存在同时上报的情况,注意区分使用场景处理,比如,动态手势释放,起始手势为拳型,终止手势为掌型,若同时订阅了动态手势释放和静态手势拳型和掌型,则做释放手势时,拳型、释放和掌型三个手势都会返回。

3. 因上翻的起始态是下翻的终止态,上翻的终止态是下翻的起始态,同时订阅时会影响识别的准确度,建议一个主题中仅使用其中之一,即一个主题锁屏交互中,选择了上翻手势识别,就不要选择下翻手势识别,或反之。

4. 一个主题最多使用3个静态手势和2个动态手势,对于相似容易混淆的动态手势,比如上翻和下翻、上翻和抓屏,一个主题只能用一个。

应用示例

无