鸿蒙OS试题(6)

下面持续交付&持续部署描述哪个是正确的:

A.持续交付(CD,Continuous Delivery):指的是,频繁的将软件的新版本,交付给质量团队或者用户,以供评审。如果评审通过,代码就进入生产阶段。它强调的是,不管怎么更新,软件是随时随地可以交付的。

B.持续交付可以随时随地部署到生产环境

C.在持续交付实践中,要考虑处理故障回滚和紧急修复,以确保系统在出现问题时能够快速恢复和修复。

D.持续部署是将代码库中的任何更改都应该自动且快速地投入生产环境。持续部署等同于持续交付

HarmonyOS应用开发者小张,正在利用DevEco Studio进行一款复杂应用的UI界面调试。小张了解到ArkUI Inspector是DevEco Studio内置的一项强大工具,能够显著提升UI调试效率。基于ArkUI Inspector的特性描述,下列哪些描述是正确的

A.

交互式组件选择:用户既可以在组件树视图中选择组件,使UI界面上对应组件高亮显示并展示其属性详情;也可以直接在UI布局显示界面上点击选择组件

B.

UI效果查看:开发者能够查看连接真机上运行的应用程序的UI显示效果,页面组件树结构,以及选中组件的属性信息

C.

性能监控:提供详细的UI渲染性能指标,帮助开发者识别布局瓶颈和渲染效率问题,从而优化应用性能

D.

UI快照管理:支持导出应用的UI界面为快照图片,并允许这些快照被导入回ArkUI Inspector中,便于离线分析或分享讨论UI设计方案

小华正在使用DevEco Studio开发一个复杂的HarmonyOS应用,他意识到代码中有一段逻辑被多次重复使用,为了优化代码结构和减少冗余,他决定将这段逻辑提取出来作为一个独立的方法。同时,他也注意到有些常用的硬编码值可以抽象为常量,以提高代码的可读性和维护性。小华希望利用DevEco Studio的代码重构功能来高效完成这些任务,通过以下哪些操作来实现代码重构,以提升编码效率

A.

选中需要重构的代码块,右键点击选择“Refactor”,然后选择“Extract Method”来将代码块转换为一个新的函数/方法

B.

为了简化复杂类型的多次书写,小华可以选择特定类型字面量,通过“Refactor”菜单下的“Extract Type Alias”来创建类型别名

C.

如果小华识别到一组相关的对象字面值可以抽象为一个接口,他可以直接通过“Refactor”菜单中的“Extract Interface”功能实现

D.

若需要将局部变量提升为类成员变量,小华只需简单选中变量名,右键选择“Refactor” -> “Promote Local Variable”

44项目需要同时进行应用和元服务的开发,并针对当前项目工程中的代码可以分别构建出应用和元服务的包,如何在DevEco Studio中设置不同的构建配置,达成这个目的

A. 在模块级别buld-pronlejson5定义两个target;将两个target的bundleType分别设置成app和atomicService

B. 修改工程级别的AppScope/appjson5中的bundeType值为atomicServce

C. 在工程级别build-profile.json5定义两个product,将两个product的bundleType分网设置戏app和atomicService

D. 修改工程级别的AppScope/appjson5中的bundleType值为app

22关于代理提醒开发使用的接口是

A.使用startWork申请任务,使用stopWork取消任务,使用getWorkStatus获取任务状态

B.使用publishReminder发布一个提醒类通知,使用cancelReminder取消一个指定的提醒类通知

C.使用startBackgroundRunning申请任务,使用stopBackgroundRunning取消任务

D.使用requestSuspendDelay申请任务,使用getRemainingDelayTime获取任务剩余时间

54下面代码符合ArkTS编程规范的是

A.

if (flag) {

//...

}else {

//...

}

B.

function fight(): void {

console.log('Swooosh!');

}

C.

const arr = [1, 2, 3];

D.

if(isJedi) {

fight();

}

56 ArkTS对并发编程API和能力进行了增强,以下描述正确的是

A.单次I/0任务的开发场景中,必须使用TaskPool进行开发:

B.默认情况下,Sendable数据在ArKTS并发实例间(包括主线程、TaskPool&Worker工作线程)传递的行为是拷贝传递。

C.在并发API的形式上,目前主要有两种:Worker和TaskPool

D.CPU密集型任务场景中,当任务不需要长时间(3分钟)占据后台线程,而是一个个独立的任务时,推荐使用TaskPool进行开发。

12在Harmony0S应用开发中,当开发者遇到需要分析Release版本应用的崩溃或异常堆栈信息时,为了准确地将堆栈追踪信息对应到源代码的具体位置,以下哪个描述是正确的做法或理解

A.DevEco Studio提供的Release应用堆栈解析功能,要求开发者在遇到问题时,需上传构建产物中的特定文件(如s0、source map、nameCache等)到指定工具或界面,借助这些文件辅助解析堆栈信息,实现从Release堆栈到源码的映射,便于快速定位问题

B.开发者需手动将Release构建生成的so文件与源代码进行映射,配合第三方工具进行堆栈信息还原虽然过程繁琐,但最终能定位到问题代码位置

C.DevEco Studio通过集成的Release应用堆栈解析功能,自动利用构建时产生的so文件、source map文件、nameCache文件等,需额外操作即可直接在Release应用中提供详细的源码级堆栈追踪信息

D.

因为Release应用经过优化和去除Debug信息,直接从堆栈跟踪到源代码行号是不可能的,开发者只能依靠日志信息手工推测问题所在

64在开发Harmony0S应用的多元化测试环境中,DevEco Studio引入了本地模拟器(Local Emulator)作为重要工具,旨在帮助开发者在个人开发机器上高效模拟Harmony0S环境,进行应用或服务的快速运行与细致调试。请根据本地模拟器的实际应用场景与系统要求,选出所有正确的描述选项

A.DevEco Studio的本地模拟器允许开发者在个人电脑上模拟HarmonyOS环境,便于应用或服务的运行与调试。

B.mac计算机配置方面,为了确保本地模拟器的稳定运行,推荐至少配备8GB RAM.

C.开发者需要注意的是,DevEco Studio的本地模拟器可以在虚拟机内部进一步运行,以节省硬件资源。

D.为了保证流畅的运行和调试体验,本地模拟器推荐macOS系统版本至少为12.5以上。

65 Websocket连接开发步骤描述错误的是

A.导入需要的webSocket模块

B.根据URL地址,发起WebSocket连接

C.(可选)订阅WebSocket的打开、消息接收、关闭、Error事件

D.创建一个WebSocket连接,返回一个WebSocket对象

E.使用完WebSocket连接之后,主动断开连接

F.调用Session.start方法开启metadata数据输出

87下面关于方舟字节码指令含义说明正确的是

A.

假设寄存器v0存放了对象A, 累加器(acc)存放了对象B,那么执行指令"lda v0"后,v0存放对象B,acc存放对象B

B.

假设寄存器v0存放了对象A, 寄存器v1存放了对象B,那么执行指令"mov v0, v1"后,v0存放对象A, v1存放对象A

C.

假设寄存器v0存放了对象A, 累加器(acc)存放了对象B,那么执行指令"lda v0"后,v0存放对象A,acc存放对象A

D.

假设寄存器v0存放了对象A, 寄存器v1存放了对象B,那么执行指令"mov v0, v1"后,v0存放对象B, v1存放对象B

14关于长时任务开发使用的接口是

A.使用startWork申请任务,使用stopWork取消任务,使用getWorkStatus获取任务状态
B.使用publishReminder发布一个提醒类通知,使用cancelReminder取消一个指定的提醒类通知
C.使用startBackgroundRunning申请任务,使用stopBackgroundRunning取消任务
D.使用requestSuspendDelay申请任务,使用getRemainingDelayTime获取任务剩余时间



21关于短时任务开发使用的接口是

A.使用requestSuspendDelay申请任务,使用getRemainingDelayTime获取任务剩余时间

B.使用publishReminder发布一个提醒类通知,使用cancelReminder取消一个指定的提醒类通知

C.使用startBackgroundRunning申请任务,使用stopBackgroundRunning取消任务

  1.  使用startWork申请任务,使用stopWork取消任务,使用getWorkStatus获取任务状态

关于延迟任务开发使用的接口是

A.使用requestSuspendDelay申请任务,使用getRemainingDelayTime获取任务剩余时间

B.使用publishReminder发布一个提醒类通知,使用cancelReminder取消一个指定的提醒类通知

C.使用startBackgroundRunning申请任务,使用stopBackgroundRunning取消任务

  1.  使用startWork申请任务,使用stopWork取消任务,使用getWorkStatus获取任务状态


在Ul组件的click处理事件中调用如下的eventHubFunc,连续点击2次该控件后,运行日志输出是ABCD中的哪项?

23 import common from '@kit.AbilityKit';

import{promptAction} from '@kit.ArkUI'

@Entry

@Component

struct Page_EventHub {

 private context=getContext(this) as common.UIAbilityContext;

 eventHubFunc():void{

  this.context.eventHub.emit('event1');

  this.context.eventHub.emit('event2',2,'test2');

  this.context.eventHub.off('event1');

 }

 build() {

  Column(){

   // ...

   List({initialIndex:0}){

    ListItem(){

     Row(){

      // ...

     }

     .onClick(() => {

      this.eventHubFunc()

      promptAction.showToast({

       message:$r('app.string.EventHubFuncA')

      })

     })

    }

   }

  }

 }

}

A、

[Example].[Entry].[EntryAbility]receive.[]

[Example].[Entry].[EntryAbility] receive.[2,"test2"]

[Example].[Entry].[EntryAbility] receive.[2,"test2"]

B、

[Example].[Entry].[EntryAbility]receive.[]

[Example].[Entry].[EntryAbility]receive.[2,"test2"]

[Example].[Entry].[EntryAbility]receive.[]

C、

[Example].[Entry].[EntryAbility]receive.[]

[Example].[Entry].[EntryAbility] receive.[2,"test2"] 

D、

[Example].[Entry].[EntryAbility]receive.[]

[Example].[Entry].[EntryAbility]]receive.[2,"test2"]

[Example].[Entry].[EntryAbility]receive.[]

[Example].[Entry].[EntryAbility]]receive.[2,"test2"]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

星宇工作室

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值