
题库已升级,现考试是40个单选,20个多选,只要认真看题和选项,考试时选项序有时会打乱 ,考试只须80分过
下面是单选题,标了颜色的,或选项中写明了的,就是答案。千万要注意看选项的内容,考试时,选项顺序会变动。最好是用电脑通过关键字搜索,有时题目某些字不完全相同,可题是同一个题。 1.如果要实现 Row 组件内的子元素均匀排列,且第一个元素与行首 对齐,最后一个元素与行尾对齐,需要使用justifyContent 的 哪个枚举值@ B A. End B. SpaceBetween C. Start D. SpaceEvenl 2.为了使 isShow 参数值与半模态界面的状态同步, 可以使用下列那种方式双向绑定 isShow 参数 选:选项中 有$$那个
3 注意看图,选下面这项 通过 layoutOptions 4.在开发 Harmony0S 应用工程时, 随着业务的发展,现在需要创建一个模块, 关于在 DevEco Studio 中创建 Module , 下列选项哪种方式是错误的? 在 hvigor 目录下,单击鼠标右键,选择 New>Module ,创建新的 Module;此时 module 将创建在该 文件目录下。 4 如果想要设置输入框的自定义键盘,可以使用下面的哪个接口?A A.customKeyboard B.showCounter C.showUnit D enterKeyType 42图片大小跟lmage组件设置的宽高不匹配时,使用objectFit属性,不会缩放图片的类型a 是下面哪个选项 A CENTER B Cover C FI D Contain 5.如果想要设置输入框的自定义键盘,可以使用下面的哪个接口?A A CustomKeyboard B.showCounter C showUnit D. enterKeylype 51.下述代码片段,使用了哪些基于web的性能优化手段d Web({ src: "https://www.example.com', controller: this.controller }) .onPageEnd((event)=>{ this.controller.prefetchPage('https://www.example.com/nextpage ): A. 预连接 B. 以上都有 C. 预渲染 D 预加载 5.以下哪份代码可以实现下图Grid布局 (图略) 通过设置不同GridItem的宽度 6.开发者小李遇到了一个复杂的问题,该问题仅在特定的代码执行路径上出现,且难以复现 。他使 用的是 C++进行核心算法开发,代码的逻辑密集且对性能要求极高, DevEco Studio 为 C/C++开发 者提供的高级调试能力, 以下哪个能力可以帮助小李查看代码历史执行路径, 回溯到关键的变量状 态 反向调试能力:允许开发者在调试过程中回退回到之前的代码行或断点,不仅查看过去的堆栈信 息 ,还能重现历史的全局 、静态和局部变量状态, 帮助深入理解代码历史行为,特别是对于复杂逻 辑和难以复现的bug 定位至关重要 jkl;' 6.开发者小张正在使用 DevEco Studio 开发一款 Harmony0S 应用,他遇到了一个仅在应用实际运行 环境中出现的问题, 需要调试已部署在设备上的应用以定位问题根源, 为了能够在应用已经运行的 情况下介入调试,小张应该采用哪种调试方法 ? Attach Debugger to Process,这允许他连提到正在运行的应用进程进行调试 7.Harmonyos 应用开发团队正着手优化一款面向全球市场的在线教育应用,该应用在特定课程直 播环节出现了性能波动和响应延迟的问题,严重影响用户体验 。打算利用 DevEco Profiler 来进行性 能优化 。 DevEco Profiler 其设计核心和主要优势是什么 DevEco Profier 依据Top-Down 设计理念,通过高度整合的数据展示范式,提供从宏观到微观的性 能数据分析,加速开发者定位和解决问题的过程 8.arkts支持以下哪个函数(D) 9以下示例代码中可以进行动画的属性有哪些? .width(this.compWidth)//1 .height(this.compHeight)//2 .animation({curve:Curve.Ease,duration:280}) .borderRadius(this.compRadius)//3 1 、2 、3 的都选 10. 以下 Websocket 连接开发的步骤顺序,描述错误的是 ? ()
调用 Session.start 方法开启 metadata 数据输出 13.某业务团队的架构师发现某个特性用的频率比较少,但是这个特性占用空间资源还是比较大 的 。 为了减少首包下载体积,准备将该特性解耦出来, 并对外提供 API 方便主模块调用 。 以下说法 正确的是 将该特性做成按需加载的 hsp 包,暴露接口给主模块使用。 14. 以下关于 HAP(Harmony Ability Package)说法正确的是 应用工程如果包含多个 Module ,在应用上架时,会将多个.hap 文件打包成一个.app 文件。 15.我们需要避免在逐帧调用的接口中执行耗时操作, 下面哪个选项不属于上述的接口? aboutToReuse 16.关于静态检查描述错误的是() 静态检查 可以检测代码中的语法错误和潜在的逻辑错误,也支持检测代码在运行时现的错误, 因 此静态检查可以替代动态测试。 17.依次点击 ABCD 四个按钮, 其中不会触发 ui 刷新的是 () Button C Jim 那个按钮 18. 以下代码中,懒加载生效的是 ( C ) A. """@Entry @Component struct LazyTest { data: MyDataSource<number> = new MyDataSource<number>() build() { List() { ListItemGroup() { LazyForEach(this.data, (item:number)=>{ ListItem() { Text(item.toString()) .width('100%') .height(100) } }) } }.width(""""100%"""").height(""""100%"""") } }"" " B. """@Entry @Component struct LazyTest { data: MyDataSource<number> = new MyDataSource<number>() build() { Scroll() { List() { LazyForEach(this.data, (item:number)=>{ ListItem() { Text(item.toString()) .width('100%') .height(100) } }) } }.width(""""100%"""").height(""""100%"""") } }""" C. """@Entry @Component struct LazyTest { data: MyDataSource<number> = new MyDataSource<number>() build() { List() { ListItem() { Column() { LazyForEach(this.data, (item: number) => { Text(item.toString()) .width('100%') .height(100) }) } } }.width(""""100%"""").height(""""100%"""") } }""" D. """@Entry @Component struct LazyTest { data: MyDataSource<number> = new MyDataSource<number>() build() { Scroll() { List() { LazyForEach(this.data, (item:number)=>{ ListItem() { Text(item.toString()) .width('100') 4.开发者开发了一个应用,该应用只有一个 hap 包, 其 module.json5 中 abilities 的配置如下所示, 包含 1 个 UIAbility(无 Web 组件) 、 1 个 FormExtensionAbility 组件 、 1 个 WorkSchedulerExtensionAbility 组件,那么该应用在运行过程中,最多会存在几个应用进程 3 个 20 以下代码中,懒加载生效的是 (单选:B) A. """@Entry @Component struct LazyTest { data: MyDataSource<number> = new MyDataSource<number>() build() { List() { ListItemGroup() { LazyForEach(this.data, (item:number)=>{ ListItem() { Text(item.toString()) .width('100%') .height(100) } }) } }.width(""""100%"""").height(""""100%"""") } }"" " B. """@Entry @Component struct LazyTest { data: MyDataSource<number> = new MyDataSource<number>() build() { Scroll() { List() { LazyForEach(this.data, (item:number)=>{ ListItem() { Text(item.toString()) .width('100%') .height(100) } }) } }.width(""""100%"""").height(""""100%"""") } }""" C. """@Entry @Component struct LazyTest { data: MyDataSource<number> = new MyDataSource<number>() build() { List() { ListItem() { Column() { LazyForEach(this.data, (item: number) => { Text(item.toString()) .width('100%') .height(100) }) } } }.width(""""100%"""").height(""""100%"""") } }""" D. """@Entry @Component struct LazyTest { data: MyDataSource<number> = new MyDataSource<number>() build() { Scroll() { List() { LazyForEach(this.data, (item:number)=>{ ListItem() { Text(item.toString()) .width('100') 16.某个应用开发了一个 UIAbilityA, 其启动模式是 specified ,并且对应的 AbilityStage 的实现如 下 :依次调用如下方法 4 次启动 UIA bi1ityA,value 分别是"test""test”"testA""testA" ,则当前运行期 UIAbility 实例有几个 3 17.应用程序开发调试过程中,经常需要安装新应用进行调测, 下面安装应用操作错误的是 hdc install -p ohosapp.hap 18.使用 DevEco studio 进行复杂的跨设备功能开发与调试工作,期间频繁依赖本地模拟器来模拟多 样化的设备环境 。在这样的背景下, 以下关于 DevEco studio 本地模拟器所支持的规格与功能, 哪 一项描述是准确的 ?() 本地模拟器上运行的应用无需进行签名,简化了调试过程。 19. 已知下列代码 PageOne 页面为 navigation 中的某一子页面,依次点击 PageOne 页面中 toPageTwo 按钮, PageTwo 页面中 toPageOne 按钮,此时点击 get 按钮获取全部名为 name 的 NavDestination 页面的位置索引为() [0,2] 20. 已知下列代码 PageOne 页面为 navigation 中的某一子页面,依次点击 PageOne 页面中 toPageTwo 按钮, PageTwo 页面中 toPageOne 按钮,此时获取当前页面的路由栈数量为多少 3 21.某 App 有 A 、 B 、 C 、 D 四个团队分别负责 ModuleA 、 ModuleB 、 ModuleC 和 ModuleD 四个业 务模块, 随着业务的发展, ModuleA 需要跳转到 ModuleB 、 ModuleC 的页面, ModuleB 需要跳转 到 ModuleC 、 ModuleD 的界面, ModuleC 需要跳转到 ModuleA 的界面, ModuleD 需要跳转到 ModuleB 和 ModuleC 的界面 。 由于复杂的依赖关系, 导致一旦有变化就需要知会各个团队所以该
团队的架构师想要解耦各个业务模块, 以下哪些做法是不推荐的 采用静态 import 方式引入对应跳转的页面。 22. 以下对系统兼容性的理解正确的是 已发布的系统能力有可能会发生非兼容性变更, 比如特性或修改问题导致的行为不兼容,这种 情况下应用需要关注 changelog 并进行适配。 23.下面交付&持续部署描述哪个是正确的: 持续交付(CD,Continuous Delivery):指的是,频繁的将软件的新版本, 交付给质量团队或者用户, 以 供评审 。如果评审通过,代码就进入生产阶段。 24.应用开发中使用的各类资源文件, 需要放入特定子目录中存储管理, 以下关于资源说法错误的 是 rawfile 目录, 支持创建多层子目录, 子目录名称可以自定义, 文件夹内可以自由放置各类资源文 件 。 目录中的资源文件会被编译成二进制文件, 并赋予资源 25.下面的配置一共存在有几处错误 module.json5 配置文件和 shortcuts_config.json 配置文件 1 处 26.项目需要为不同的设备形态(如手机 、 智能手表)提供定制化构建 。请说明如何在 DevEcostudio 中 设置不同的构建配置, 以生成针对不同设备的 hap 包 () 在模块级别 build-rofile.json5 定义多个 target,在每个 target 的 config/deviceType 中定义不同的设 备类型 27.在一个包含多个模块(如 entry 、feature 、service 、 library 等)的大型 Harmonyos 应用项目中,如 果某个模块 feature 对另外一个公共库模块 1ibrary 有依赖,如何通过 DevEcostudio 正确配置项目 依赖关系? 在 feature 的 oh-package.json5 文件的 dependencies 字段中配置 library 的依赖 28.在一个包含多个模块(如 entry 、feature 、har 、hsp 等) 的大型 Harmonyos 应用项目中, 如果要对某个静态共享模块构建出静态构建包产物,如何通过 DevEcoStudio 进行构建 选中 har 模块,点击 build 菜单栏 make module 'har' 29.张工正在使用 DevEco studio 进行一个复杂项目的开发工作,项目中包含了成千上万行代码且涉 及众多模块 。在重构代码的过程中,他意识到需要对一个核心类名进行更改,考虑到这个类在整个 项目中被广泛引用,手动修改不仅耗时且容易出错 。基于 DevEco studio 提供的代码编辑功能, 以 下哪个描述最准确地概述了张工如何高效且安全地完成对类名的更改, 同时确保整个项目中所有相 关引用同步更新? 张工选中需要更名的类名,使用快捷键 Shift+F6 或右键菜单 Refactor ->Rename,在弹出框中输入 新名称并选择替换范围后,点击“ Refactor”完成更名操作,确保所有相关引用自动更新。
以下 a1\a2\a3\a4 哪些赋值语句在 ArkTS 中是合法的 选这个let a2:A= new B(); ()
class A{v:number =0;}
class B extends A{u:string ='';} class c{
v:number =0;}
let a1:A = new C();
let a2:A= new B(); ()
let a3: B = new A();
let a4: C= new B();
41.作为一个应用开发者,想搭建运维平台,想在应用内定时读取当前的内存信息, 可以通过()接口 来实现。
hiDebug
42.某 App 有 A 、 B 、 C 、 D 四个团队分别负责 ModuleA 、 ModuleB 、 ModuleC 和 ModuleD 四个业 务模块, 随着业务的发展, ModuleA 需要跳转到 ModuleB 、 ModuleC 的页面, ModuleB 需要跳转 到 ModuleC 、 ModuleD 的界面, ModuleC 需要跳转到 ModuleA 的界面, Moduel D 需要跳转到
Moduel B 和 ModuleC 的界面 。 由于复杂的依赖关系, 导致一旦有变化就需要知会各个团队,所以 该团队的架构师想要解耦各个业务模块, 以下哪些方法是不推荐的
采用静态 import 方式引入对应跳转的页面
33.根据代码, 以下解释正确的是()
在自定义组件 Page 的 build 方法里改变状态变量是非法操作, 可能导致未定义的异堂 UI 行为.
34.HarmonyOS 提供了多种包结构,每种包编译后的产物都不同, 下面说法错误的是() app 包编译后的产物是.app
35.关于长时任务开发使用的接口是
使用 startBackground Running 申请任务,使用 stopBackground Running 取消任务
36.关于短时任务开发使用的接口是
使用 requestSuspend Delay 申请任务,使用 getRemainingDelayTime 获取任务剩余时间
37.关于延迟任务开发使用的接口是 ()
使用 startWork 申请任务,使用 stopWork 取消任务,使用 getWorkStatus 获取任务状态
63. 以下关于 Localstorage 的说法正确有哪些? ()
①被@Component 装饰的组件最多可以访问一个 LocalStorag?实例和 AppStorage, 未被@Entry 装 饰的组件不可被独立分配 LocalStorage 实例, 只能接受父组件的 LocalStorage 实例 。xai ②组件树的根节点, 即被@Entry 装饰的@Component, 可以被分配一个 LocalStorage 实例,此组 件的所有子组件实例将自动获得对该 LocalStorage 实例的访问权限。 ③应用程序可以创建多个 LocalStorage 实例, LocalStorage 实例可以在页面内共享,也可以通过 GetShared 接口, 获取在 UIAbility 里创建的 GetShared , 实现跨页面 、 UAbility 内共享。 64.在基于 Stage 模型开发的应用项目代码下,都存在一个 app.json5 配置文件, 用于配置应用的全 局信息, 以下 appjson5 配置文件错误的是 ①少了 versionName 那一项 ②label 属性少了$string 的 65.下面关于方舟字节码指令含义说明正确的是 ? ①假设寄存器v0 存放了对象 A, 累加器(acc)存放了对象 B ,那么执行指令"lda v0"后,v0 存放对象 A ,acc 存放对象 A ②假设寄存器v0 存放了对象 A,寄存器v1 存放了对象 B,那么执行指令'mov v0, v1"后,v0 存放对象 B, v1 存放对象 B 66.Code L inter 针对 ArKTS/TS 代码进行最佳实践/编程规范方面的检查,最佳实践/编程规范方面的 检查规则可以配置,针对 code linter 的配置项一下哪些说法是正确的 ? ① ruleSet:配置检查使用的规则集,规则导入多条规则。 ②ignore:配置无需检查的文件目录, 其指定的目录或文件需使用相对路径格式,相对于 code - inter.json5 所在工程根目录,例如:build/**/*
③fles:配置待检查的文件名单,如未指定目录,规则适用于所有文件,例如:["**/*.ets","**/*.js","**/*.ts"]
67. 以下哪些实现方式可实现文本字号 20 的效果 minSize 那个不选 68.下面关于 ArkTS 中 export 用法,正确的是 () ①export { export1 as alias1 } from “ets file name ” ②exprot { export1 } from “ets fiile name ” ③export * as name from “ets file name ” ④export * from “ets file name ” 69.ArkTS 是鸿蒙生态的应用开发语言 。 以下哪些选项是 ArkTS 的设计理念 () ①ArkTS 保留了TS 大部分的语法特性, 帮助开发者更容易上手 ArkTS ②通过规范强化静态检查和分析,减少运行时的类型检查,从而降低了运行时负责,提升执行性能 ③通过规范强化静态检查和分析,使得许多错误在编译时可以被检查出来, 降低代码 运行错误的风险 70.开发者小李正在使用 DevEco Studio 开发一款面向 HarmonyOS 的应用,该应用需要在多种设备 上表现出一致的稳定性和优秀的用户体验 。 为了确保高质量的发布,小李意识到需要实施一套全面
的测试策略,覆盖代码的自动化测试和手动测试,还需要衡量代码的测试覆盖率, 以确定测试的充 分性 。在 DevEco Studio 的测试框架下, 以下描述中, 哪些是正确的()
① DevEco Studio 的测试框架提供测试用例执行能力,包含基础接口以编写和输出测试结果,鼓励 用户创建易于维护的自动化测试脚本, 并且统计代码覆盖率。
②Instrument Test :测试用例存储于项目的 ohosTest 目录, 要求在 HarmonyOS 设备或模拟器上执 行 ,兼容 ArkTS 与 JS 语言编写。
③无论选择 Instrument Test 还是 Local Test, DevEco Studio 均内置了详尽的测试报告功能, 实时显 示测试进度,且直接在 IDE 中可查看代码覆盖率报告, 无需外部工具
以下哪些方式可以实例arkweb同层。。选cd
190.以下module.json5配置文件正确的是
type 属性设为 har的配置是错的。
191、使用ArkUI组件复用之后,还是没有显著提升列表滑动场景的性能,于组件复用未生效可能的原因有? ABC
A. 复用的自定义组件中使用了if等条件渲染语句导致结构不相同,本便用reusetd标记
B. 页面嵌套了过多自定义组件。
C. 在aboutToReuse回调的数中更新了冗余的状态变量
D. 没有在aboutToReuse更新关联的状本变型数据
192........订阅到的系统事件,哪些包含HiLog日志?(BD)
A.CPU高负载事件
B.卡死事件
C.启动耗时事件
D.崩溃事件
193、以下A到G选项,哪些是持续部署最佳实践?(BEFG)
A.手工配置管理:
B:监控和回滚机制:实时监控部署后的应用状态,如有问题及时回滚。
C:开发完成之后再向类生产环境部署:当软件被第一次部署到类生产环境(比如试运行环境)时,就是大部分开发工作完成时,至少是开发团队认为“该软件开发完成了”。
D:手工部署:持续部署可以采用手工部署的方式发布软件:
E:灰度发布:先在小部分用户或区域进行部署,观察没问题后再全面推广
F:环境一致性:保持开发、测试、生产等环境的高度一致性。
G:自动化部署流程:从代码提交到部署的整个流程应尽可能自动化。
194、以下哪个是系统资源的引用方式?A
A. 使用$r('sys.type.resource_id')
B. 使用$r('app.type.name')
C. 使用$sys('type.resource_id')
D. 使用$app('type.name')
195、Row父容器宽度100,其中子组件X设置了layoutWeight(3)和width('20%'),子组件Y设置了layoutWeight(2)和width('30%'),会出现什么样的效果? C
A. 子组件X宽度20,子组件Y宽度30
B. 子组件X宽度40,子组件Y宽度60
C. 子组件X宽度60,子组件Y宽度40
D. 子组件X宽度30,子组件Y宽度20
196 当前动态import支持导入的模块类型有哪些? (ABCD)
A.动态import支持加载HSP模块
B.动态import支持加载远程HAR模块
C.动态import支持加载OHPM模块
D.动态import支持加载本地HAR模块
197 下面关于ArkTS中export用法,正确的是B C D
Aexport * from ets file name
B export as name from ets file name
C export f export1 } from "ets file name"
D export { export1 as alias1 from "ets file name!
198
关于build函数中的if,以下哪些描述是错误的?A d
A if自身是需要绘制的节点
b.if发生分支切换时,如果要下树,会先将当前分支的组件下树,再创建要切换到分支的组件
C 通过if组件对不确定的数据进行判空,可以保证在if括号内的后续使用过程中不会为空,是推荐的做法
D if分支中的自定义组件,无法使用组件复用,因此建议使用reuseid避免if切换
199
以下哪几个属于属性字符串支持的StyledStringValue? CD
A. Span
B.ParagraphStyle
C. TextStyle
D.TextShadowStyle
200
2下述场景代码片段,其中列表数据较多,且图片为远端图片,能有效减少列表滑动过程中的图片白块的措施有:多选(ABD)
List() {
LazyForEach(this.source, (item: ShowData) => {
ListItem() {
Text(item.msg)
Image(item.img)
}
})
}
A.
为List添加cachedCount属性
B.
为LazyForEach添加第三参数
C.
使用ForEach替换LazyForEach
D.
为img添加有效缓存管理
201
以下代码在平板设备下,支持下拉关闭弹窗的是?多选(AC)
A.
// xxx.ets
@Entry
@Component
struct SheetTransitionExample {
@State isShow:boolean = false
@Builder myBuilder() {
Column() {
}
.width('100%')
}
build() {
Column() {
Button("transition modal 1")
.onClick(() => {
this.isShow = true
})
.fontSize(20)
.margin(10)
.bindSheet($$this.isShow, this.myBuilder(),{
detents:[SheetSize.MEDIUM,SheetSize.LARGE,200],
title:{title:"title", subtitle:"subtitle"},
preferType: SheetType.CENTER,
shouldDismiss:((sheetDismiss: SheetDismiss)=> {
console.log("bind sheet shouldDismiss")
sheetDismiss.dismiss()
})
})
}
.justifyContent(FlexAlign.Start)
.width('100%')
.height('100%')
}
}
B.
// xxx.ets
@Entry
@Component
struct SheetTransitionExample {
@State isShow:boolean = false
@Builder myBuilder() {
Column() {
}
.width('100%')
}
build() {
Column() {
Button("transition modal 1")
.onClick(() => {
this.isShow = true
})
.fontSize(20)
.margin(10)
.bindSheet($$this.isShow, this.myBuilder(),{
detents:[SheetSize.MEDIUM,SheetSize.LARGE,200],
title:{title:"title", subtitle:"subtitle"},
preferType: SheetType.POPUP,
shouldDismiss:((sheetDismiss: SheetDismiss)=> {
console.log("bind sheet shouldDismiss")
sheetDismiss.dismiss()
})
})
}
.justifyContent(FlexAlign.Start)
.width('100%')
.height('100%')
}
}
C.
// xxx.ets
@Entry
@Component
struct SheetTransitionExample {
@State isShow:boolean = false
@Builder myBuilder() {
Column() {
}
.width('100%')
}
build() {
Column() {
Button("transition modal 1")
.onClick(() => {
this.isShow = true
})
.fontSize(20)
.margin(10)
.bindSheet($$this.isShow, this.myBuilder(),{
detents:[SheetSize.MEDIUM,SheetSize.LARGE,200],
title:{title:"title", subtitle:"subtitle"},
preferType: SheetType.BOTTOM,
shouldDismiss:((sheetDismiss: SheetDismiss)=> {
console.log("bind sheet shouldDismiss")
sheetDismiss.dismiss()
})
})
}
.justifyContent(FlexAlign.Start)
.width('100%')
.height('100%')
}
}
D.
// xxx.ets
@Entry
@Component
struct SheetTransitionExample {
@State isShow:boolean = false
@Builder myBuilder() {
Column() {
}
.width('100%')
}

题全是最新的,本月更新的,有全部的题和答案,须要的请加v zgycsmb