1.介绍基于TS扩展的声明式开发范式开发一个分布式手写板应用。涉及的OS特性有分布式拉起和分布式数据管理,使用这两个特性实现不同设备间拉起与笔迹同步,即每台设备在书写的时候,连接的其他设备都能实时同步笔迹,效果图如下:2.代码结构整个工程的代码结构如下:common:存放公共资源media:存放图片model:存放数据模型类KvStoreModel.ts:分布式数据存储类RemoteDeviceModel.ts:远程设备类pages:存放页面index.ets:主页...
2022-04-06 21:42:04 1.2w浏览 9点赞 4回复 5收藏
分布式相机简介分布式相机是多个设备的相机同时协同使用的能力。分布式相机组件是为分布式硬件子系统提供这一能力的组件。本组件不直接对接应用,只向分布式硬件框架子系统提供C++接口。应用可以通过相机框架的接口使用分布式相机组件操作其他设备的Camera,使用方式与本地相机一致。其系统架构图如下图所示:分布式相机接口(DistributedCameraSDK):为分布式硬件管理框架提供超级终端虚拟Camera使能去使能能力,以及相机状态。...
2022-04-06 20:51:49 1.7w浏览 8点赞 3回复 3收藏
基于Service模板的Ability主要用于后台运行任务(如执行音乐播放、文件下载等),但不提供用户交互界面。Service可由其他应用或Ability启动,即使用户切换到其他应用,Service仍将在后台继续运行。创建Service的代码示例如下:publicclassServiceAbilityextendsAbility{OverridepublicvoidonStart(Intentintent){super.onStart(intent);}OverridepublicvoidonCommand(Intentintent,booleanrestart,intstartId){super.onCommand(...
2022-01-26 11:41:50 1.3w浏览 2点赞 0回复 0收藏
onStart()当系统首次创建Page实例时,触发该回调。对于一个Page实例,该回调在其生命周期过程中仅触发一次,Page在该逻辑后将进入INACTIVE状态。开发者必须重写该方法,并在此配置默认展示的AbilitySlice。onActive()Page会在进入INACTIVE状态后来到前台,然后系统调用此回调。Page在此之后进入ACTIVE状态,该状态是应用与用户交互的状态。Page将保持在此状态,除非某类事件发生导致Page失去焦点,比如用户点击返回键或导航到其...
2022-01-25 10:09:30 1.1w浏览 1点赞 0回复 0收藏
onStartContinuation()Page请求迁移后,系统首先回调此方法,开发者可以在此回调中决策当前是否可以执行迁移,比如,弹框让用户确认是否开始迁移。onSaveData()如果onStartContinuation()返回true,则系统回调此方法,开发者在此回调中保存必须传递到另外设备上以便恢复Page状态的数据。onRestoreData()源侧设备上Page完成保存数据后,系统在目标侧设备上回调此方法,开发者在此回调中接受用于恢复Page状态的数据。注意,在目标...
2022-01-23 21:21:04 1.5w浏览 2点赞 0回复 0收藏
Text是用来显示字符串的组件,在界面上显示为一块文本区域。Text作为一个基本组件,有很多扩展,常见的有按钮组件Button,文本编辑组件TextField。Text的部分自有XML属性如下所示:综上所述,这道题的答案是:ACD。向大家推荐由我的教学团队开发的视频课程《鸿蒙应用开发HCIA认证超细致精讲》:https:edu.51cto.comtopic4940.html—————————————————————————————————————————————...
2022-01-21 01:00:40 1.1w浏览 0点赞 0回复 0收藏
系统管理或用户操作等行为均会引起Page实例在其生命周期的不同状态之间进行转换。Ability类提供的回调机制能够让Page及时感知外界变化,从而正确地应对状态变化(比如释放资源),这有助于提升应用的性能和稳健性。Page生命周期的不同状态转换及其对应的回调,如下图所示:onStart()当系统首次创建Page实例时,触发该回调。对于一个Page实例,该回调在其生命周期过程中仅触发一次,Page在该逻辑后将进入INACTIVE状态。开发者必...
2022-01-19 17:38:26 1.1w浏览 0点赞 0回复 0收藏
一个应用可能包含多个Page,仅需要在支持迁移的Page中通过以下方法实现IAbilityContinuation接口。同时,此Page所包含的所有AbilitySlice也需要实现此接口。onStartContinuation()Page请求迁移后,系统首先回调此方法,开发者可以在此回调中决策当前是否可以执行迁移,比如,弹框让用户确认是否开始迁移。onSaveData()如果onStartContinuation()返回true,则系统回调此方法,开发者在此回调中保存必须传递到另外设备上以便恢复P...
2022-01-18 20:17:46 1.5w浏览 0点赞 0回复 0收藏
跨设备迁移支持将Page在同一用户的不同设备间迁移,以便支持用户无缝切换的诉求。以Page从设备A迁移到设备B为例,迁移动作主要步骤如下:设备A上的Page请求迁移。HarmonyOS处理迁移任务,并回调设备A上Page的保存数据方法,用于保存迁移必须的数据。HarmonyOS在设备B上启动同一个Page,并回调其恢复数据方法。以Page从设备A迁移到设备B为例,详细的流程如下:设备A上的Page请求迁移。系统回调设备A上Page及其AbilitySlice栈中所...
2022-01-18 09:37:27 1.1w浏览 0点赞 0回复 1收藏
HarmonyOS的架构图如下所示:因此,这道题的答案是:AC。向大家推荐由我的教学团队开发的视频课程《鸿蒙应用开发HCIA认证超细致精讲》:https:edu.51cto.comtopic4940.html————————————————————————————————————————————————————————————————————什么是鸿蒙应用开发HCIA认证呢?华为认证分为两大类,分别是:云服务与平台、ICT技术架构与应用。这两大类总...
2022-01-16 11:48:46 9924浏览 1点赞 0回复 0收藏
分布式设备虚拟化平台可以实现不同设备的资源融合、设备管理、数据处理,多种设备共同形成一个超级虚拟终端。针对不同类型的任务,为用户匹配并选择能力合适的执行硬件,让业务连续地在不同设备间流转,充分发挥不同设备的能力优势,如显示能力、摄像能力、音频能力、交互能力以及传感器能力等。分布式设备虚拟化的典型应用场景举例:视频通话场景:在做家务时接听视频电话,可以将手机与智慧屏连接,并将智慧屏的屏幕、摄像头...
2022-01-14 09:39:22 8577浏览 2点赞 0回复 0收藏
HarmonyOS提供了通知功能,即在一个应用的UI界面之外显示的消息,主要用来提醒用户有来自该应用中的信息。当应用向系统发出通知时,它将先以图标的形式显示在通知栏中,用户可以下拉通知栏查看通知的详细信息。常见的使用场景:显示接收到短消息、即时消息等。显示应用的推送消息,如广告、版本更新等。显示当前正在进行的事件,如播放音乐、导航、下载等。综上所述,这道题的答案是:ABCD。向大家推荐由我的教学团队开发的视频...
2022-01-13 11:06:50 8491浏览 1点赞 0回复 0收藏
每个应用都可以订阅自己感兴趣的公共事件,订阅成功后且公共事件发布后,系统会把其发送给应用。这些公共事件可能来自系统、其他应用和应用自身。HarmonyOS提供了一套完整的API,支持用户订阅、发布和接收公共事件。发布公共事件需要借助CommonEventData对象,接收公共事件需要继承CommonEventSubscriber类并实现onReceiveEvent回调函数。公共事件相关基础类包含CommonEventData、CommonEventPublishInfo、CommonEventSubscribe...
2022-01-11 19:41:02 8362浏览 2点赞 0回复 1收藏
IM类意图识别IM类意图识别,是指利用机器学习技术,针对用户短信或聊天类APP等IM应用的文本消息进行内容分析,并识别出消息内容代表的用户意图。基于语义分析,利用机器学习的相关技术识别并理解用户消息的意图,通过IM意图识别,可以衍生出各种智能的应用场景,使智能设备更聪明,更懂用户。基于IM意图识别接口,可以对文本消息中包含的用户意图进行自动分析识别。目前仅开放支持通知消息类的三个意图的智能识别(称为“意图模...
2022-01-10 21:55:20 9066浏览 0点赞 0回复 0收藏
BLE中心设备与外围设备进行数据交互的开发步骤如下:1、调用startScan()接口启动BLE扫描来获取外围设备。2、获取到外围设备后,调用connect(booleanisAutoConnect,BlePeripheraCallbackcallback)建立与外围BLE设备的GATT连接,boolean参数isAutoConnect用于设置是否允许设备在可发现距离内自动建立GATT连接。3、启动GATT连接后,会触发connectionStateChangedEvent(intconnectionState)回调,根据回调结果判断是否连接GATT成功...
2022-01-09 22:10:45 1.0w浏览 1点赞 0回复 0收藏
蓝牙是短距离无线通信的一种方式,支持蓝牙的两个设备必须配对后才能通信。HarmonyOS蓝牙主要分为传统蓝牙和低功耗蓝牙(通常称为BLE,BluetoothLowEnergy)。传统蓝牙指的是蓝牙版本3.0以下的蓝牙,低功耗蓝牙指的是蓝牙版本4.0以上的蓝牙。BLE设备交互时会分为不同的角色:中心设备和外围设备:中心设备负责扫描外围设备、发现广播。外围设备负责发送广播。GATT(GenericAttributeProfile,通用属性配置文件)服务端与GATT客...
2022-01-06 21:22:26 8806浏览 1点赞 0回复 1收藏
视频编码的具体开发步骤如下:1、创建编码Codec实例,可调用createEncoder()创建。finalCodecencoderCodec.createEncoder();2、构造数据源格式,并设置给Codec实例,调用setCodecFormat(),代码示例如下:FormatfmtnewFormat();fmt.putStringValue(Format.MIME,Format.VIDEOAVC);fmt.putIntValue(Format.WIDTH,1920);fmt.putIntValue(Format.HEIGHT,1080);fmt.putIntValue(Format.BITRATE,392000);fmt.putIntValue(Format.FRAME...
2022-01-05 22:03:58 1.2w浏览 3点赞 2回复 2收藏
蓝牙是短距离无线通信的一种方式,支持蓝牙的两个设备必须配对后才能通信。HarmonyOS蓝牙主要分为传统蓝牙和低功耗蓝牙(通常称为BLE,BluetoothLowEnergy)。传统蓝牙指的是蓝牙版本3.0以下的蓝牙,低功耗蓝牙指的是蓝牙版本4.0以上的蓝牙。当前蓝牙的配对方式有两种:蓝牙协议2.0以下支持PIN码(PersonalIdentificationNumber,个人识别码)配对,蓝牙协议2.1以上支持简单配对。HarmonyOS传统蓝牙提供的功能有:传统蓝牙本机...
2022-01-04 23:12:10 8178浏览 1点赞 0回复 1收藏
HarmonyOS应用通过数字证书(.cer文件)和Profile文件(.p7b文件)来保证应用的完整性,数字证书和Profile文件可通过申请发布证书和Profile文件获取。申请数字证书和Profile文件前,首先需要通过DevEcoStudio来生成密钥(存储在格式为.p12的密钥库文件中)和证书请求文件(.csr文件)。同时,也可以使用命令行工具的方式来生成密钥文件和证书请求文件。基本概念密钥:包含非对称加密中使用的公钥和私钥,存储在密钥库文件中,格...
2022-01-03 16:14:27 8984浏览 3点赞 0回复 1收藏
HarmonyOS应用通过数字证书(.cer文件)和Profile文件(.p7b文件)来保证应用的完整性,数字证书和Profile文件可通过申请发布证书和Profile文件获取。申请数字证书和Profile文件前,首先需要通过DevEcoStudio来生成密钥(存储在格式为.p12的密钥库文件中)和证书请求文件(.csr文件)。同时,也可以使用命令行工具的方式来生成密钥文件和证书请求文件。基本概念密钥:包含非对称加密中使用的公钥和私钥,存储在密钥库文件中,格...
2021-12-30 19:41:32 1.2w浏览 1点赞 1回复 0收藏