鸿蒙应用开发者认证考试(答案)

高亮是易错题,掌握下面内容既可通过鸿蒙应用开发者基础认证和鸿蒙应用开发者高级认证考试

image.png|400


main_pages.json存放页面page路径配置信息。(正确)

1.在stage模型中,下列配置文件属于AppScope文件夹的是?(C)

1
2
3
4
A. main_pages.json
B. module.json5
C. app.json5(build-profile.json5)
D. package.json

2.==module.json5配置文件中,包含了以下哪些信息==?(A B D)

1
2
3
4
A. ability的相关配置信息
B. 模块名
C. 应用的版本号(app/oh-package.json5)
D. 模块类型

entry下的module.json5中包含以下哪些信息:(BCD)

1
2
3
4
A. 应用包名和版本号信息
B. Ability的配置信息
C. 设备类型信息
D. 应用权限申请列表

以下关于ArkTS声明式开发范式的基本组成说明正确的是(ABCDEF)

1
2
3
4
5
6
A. 装饰器:用来装饰类、结构体、方法以及变量,赋予其特殊的含义,例如@Entry表示这是个入口组件。
B. 自定义组件:可复用的 UI 单元,可组合其它组件。
C. UI描述:声明式的方法来描述UI的结构,例如build()方法中的代码块。
D. 内置组件:ArkTS中默认内置的基本组件和布局组件,开发者可以直接调用,如ColumnTextDividerButton等。
E. 属性方法:用于组件属性的配置,统一通过属性方法进行设置,如fontSize()width()height()color() 等。
F. 事件方法:用于添加组件对事件的响应逻辑,统一通过事件方法进行设置,如跟随在Button后面的onClick()

下面哪个组件不能包含子组件:(D)

1
2
3
4
A. Row
B. Button
C. Text
D. LoadingProgress

1.循环渲染ForEach可以从数据源中迭代获取数据,并为每个数组项创建相应的组件。(正确)

==所有使用@Component修饰的自定义组件都支持onPageShow,onBackPress和onPageHide生命周期函数。 false==

需要注意的是,部分生命周期回调函数==仅对@Entry修饰的自定义组件生效==,它们分别是:onPageShow、onPageHide、onBackPress,对@component是无效的

每调用一次router.pushUrl()方法,默认情况下,页面栈数量会加1,页面栈支持的最大页面数量为32。 true

每一个自定义组件都有自己的生命周期 true

1.用哪一种装饰器修饰的struct表示该结构体具有组件化能力?(A)

1
2
3
4
A. @Component
B. @Entry
C. @Builder
D. @Preview

2.==用哪一种装饰器修饰的自定义组件可作为页面入口组件==?(B)

1
2
3
4
A. @Component
B. @Entry
C. @Builder
D. @Preview

1.下面哪些函数是自定义组件的生命周期函数?(A B C D E)

1
2
3
4
5
A. aboutToAppear
B. aboutToDisappear
C. onPageShow
D. onPageHide
E. onBackPress

Row组件中有两个Text组件,如果使用justifyContent对齐方式,下面哪个属性可以实现左右两端对齐: FlexAlign.SpaceBetween

1.一个应用只能有一个UIAbility。(错误)

2.创建的Empty Ability模板工程,初始会生成一个UIAbility文件。(正确)

3.==每调用一次router.pushUrl()方法,页面路由栈数量均会加1。(错误)==,应该是第32个就不行了

1.API9及以上,router.pushUrl()方法的mode参数==可以配置为以下哪几种跳转页面使用的模式==?(A B)

1
2
3
A. Standard
B. Single
C. Specified

下面哪些是Ability的生命周期回调函数?(ABEF)

1
2
3
4
5
6
A. onCreate
B. onDestroy
C. onPageShow
D. onPageHide
E. onForeground
F. onBackground

3.UIAbility有哪几种的启动模式?(A B C)

1
2
3
A. multiton
B. singleton
C. specified

List容器可以沿水平方向排列,也可以沿垂直方向排列。(正确)

当Tabs组件的参数barPosition为BarPosition.End时,页签位于页面底部。(错误)还得看_vertical的值_

Resource是资源引用类型,用于设置组件属性的值,可以定义组件的颜色、文本大小、组件大小等属性。(正确)

Tabs组件仅可包含子组件TabsContent,每一个页签对应一个内容视图即TabContet组件。 true

下面哪一个事件方法可以获取到List滑动的偏移量 :onScroll

关于Resource是资源引用类型描述错误的是:(C)

1
2
3
4
A. Resource是资源引用类型,用于设置组件属性的值。
B. 通过"$r('app.type.name')"的形式引用应用资源,app代表是应用内resources目录中定义的资源,type代表资源类型(或资源的存放位置)。
C. Resource支持所有的数据类型。
D. 系统可以根据当前配置加载合适的Resource资源,例如,开发者可以根据屏幕尺寸呈现不同的布局效果,或根据语言设置提供不同的字符串。

关于Button组件,下面哪个样式是胶囊型按钮:A

1
2
3
4
A. ButtonType.Capsule
B. ButtonType.Normal
C. ButtonType.Circle
D. 以上都不是

3.下面哪个组件层次结构是错误的?(C)

1
2
3
4
A. List>ListItem>Column
B. Column>List>ListItem
C. Grid>Row>GridItem
D. Grid>GridItem

下面哪些组件层次结构是正确的。(ABE)

1
2
3
4
5
A. Text>Span
B. Button>Column>Image
C. Button>Image>Text
D. Image>Text>Span
E. Column>Row>Button

==关于ForEach(arr, itemGenerator, index)组件的描述正确的是==:(BCD)

1
2
3
4
A. ForEach中可以循环遍历逻辑代码,例如console.info('hello')
B. 第一个参数必须是数组,提供循环渲染的数据源。
C. 第二个参数生成子组件的lambda函数,为数据源中的每个数组项生成子组件。
D. 第三个参数为匿名函数,用于给定数组项生成唯一且稳定的键值。

针对包含文本元素的组件,例如Text、Button、TextInput等,可以使用下列哪些属性:(ABCDE)

1
2
3
4
5
A. fontColor
B. fontSize
C. fontStyle
D. fontWeight
E. fontFamily

下面哪些容器组件是可以滚动的(ABD)

1
2
3
4
5
A. Scroll
B. List
C. Row
D. Grid
E. Column

Row容器的主轴是水平方向,交叉轴是垂直方向,其参数类型为VerticalAlign (垂直对齐),VerticalAlign 定义了以下几种类型?(A B E)

1
2
3
4
5
A. Top
B. Bottom
C. Start
D. End
E. Center

==关于容器组件Row和Column,下面说法错误的是==: (D)

1
2
3
4
A. Column容器的主轴是垂直方向,交叉轴是水平方向;Row容器的主轴是水平方向,交叉轴是垂直方向。
B. 主轴和交叉轴始终是相互垂直的,RowColumn主轴的方向不一样。
C. Column的子组件在主轴方向上的对齐使用justifyContent属性来设置,其参数类型是FlexAlign
D. Row的子组件在交叉轴方向上的对齐方式使用alignItems属性来设置,其参数类型为HorizontalAlign**(其参数类型为VerticalAlign**

==关于Tabs组件和TabContent组件,下列描述正确的是==(ABCD)

1
2
3
4
A. TabContent组件不支持设置通用宽度属性,其宽度等于Tabs组件的barWidth属性。
B. TabContent组件不支持设置通用高度属性,其高度由父组件Tabs高度与TabBar组件高度决定。
C. TabsController用于控制Tabs组件进行页签切换,不支持一个TabsController控制多个Tabs组件。
D. TabContent组件的tabBar属性支持使用@Builder构造器生成的组件。

3.关于Tabs组件页签的位置设置,下面描述正确的是?(A B C D)

1
2
3
4
A. 当barPosition为Start(默认值),vertical属性为false时(默认值),页签位于容器顶部。
B. 当barPosition为Start(默认值) ,vertical属性为true时,页签位于容器左侧。
C. 当barPosition为End ,vertical属性为false(默认值)时,页签位于容器底部。
D. 当barPosition为End ,vertical属性为true时,页签位于容器右侧。

image.png|500


[[ArkTS模型#状态管理]]

1.@State修饰的属性不允许在本地进行初始化。(错误)

2.@CustomDialog装饰器用于装饰自定义弹窗组件,使得弹窗可以自定义内容及样式。(正确)

3.将Video组件的controls属性设置为false时,不会显示控制视频播放的控制栏。(正确)

4.@Prop修饰的属性值发生变化时,此状态变化不会传递到其父组件。(正确)

5.@Link变量不能在组件内部进行初始化。(正确)

2.==下列哪种组合方式可以实现子组件从父子组件单向状态同步==。(C)

1
2
3
4
A. @State@Link
B. @Provide@Consume
C. @State@Prop
D. @Observed@ObjectLink

1.==下列哪些状态装饰器修饰的属性必须在本地进行初始化==。(A D)

1
2
3
4
5
A. @State
B. @Prop
C. @Link
D. @Provide
E. @Consume

2.下面哪些装饰器可以用于管理自定义组件中变量的状态?(C D)

1
2
3
4
A. @Component
B. @Entry
C. @State
D. @Link

==下列哪种组合方式不能实现子组件从父子组件之间双向数据同步==。(D)

1
2
3
4
A. @State@Link
B. @Provide@Consume
C. @Observed@ObjectLink
D. @State@Prop

==关于@State状态数据特征,下列描述错误的是:(C)==

1
2
3
4
A. @State装饰的变量是组件内部的状态数据,当这些状态数据被修改时,将会调用所在组件的build方法进行UI刷新。
B. 标记为@State的属性是私有变量,只能在组件内访问。
C. @State变量可以不用给定初始值。
D. 子组件@Link装饰的变量可以和父组件的@State变量建立双向数据绑定。

2.==ArkUI提供了下面哪些弹窗功能==。(A B C D E)

1
2
3
4
5
A. AlertDialog
B. TextPickerDialog
C. DatePickerDialog
D. @CustomDialog
E. TimePickerDialog

1.属性动画中产生动画的属性可以在任意位置声明。(错误)
2.属性动画中改变属性时需触发UI状态更新。(正确)
HarmonyOS ArkUI 属性动画入门详解 - 掘金

animation属性作用域。animation自身也是组件的一个属性,其作用域为animation之前。即产生属性动画的属性须在animation之前声明,其后声明的将不会产生属性动画

1.属性animation可以在哪些组件中使用?(C)

1
2
3
4
A. 只能基础组件
B. 只能容器组件
C. 基础组件和容器组件
D. 以上都不对

3.下面哪种情况不会回调onFinish函数?(C)

1
2
3
4
A. delay设置为 0
B. tempo设置为 1
C. iterations 设置为 -1
D. playMode设置为 PlayMode.Reverse

4.==属性动画中关于animation参数说法错误的是==?(B)

1
2
3
4
A. 参数tempo默认值为1.0
B. 参数delay不能大于duration
C. 参数curve可以不设置
D. 参数iterations可以不设置1

2.属性动画中animation的参数有哪些?(A B C D)

1
2
3
4
A. playMode
B. curve
C. delay
D. onFinish

关于Video组件的回调事件,下列说法错误的是:A

1
2
3
4
A. onStart视频播放时触发该事件,可以在这里获取视频时长。
B. onFinish视频播放结束时触发该事件。
C. onPrepared视频准备完成时触发该事件。
D. onUpdate播放进度变化时触发该事件,单位为s,更新时间间隔为250ms。

1.在http模块中,多个请求可以使用同一个httpRequest对象,httpRequest对象可以复用。(错误)
2.使用http模块发起网络请求后,可以使用destroy方法中断网络请求。(正确)
3.Web组件onConfirm(callback: (event?: { url: string; message: string; result: JsResult }) => boolean)事件,返回false时候触发网页默认弹窗。(正确)
==使用http模块发起网络请求时,必须要使用on(‘headersReceive’)订阅请求头,请求才会成功。 false==
Web组件对于所有的网页都可以使用zoom(factor: number)方法进行缩放。 false
==发起网络数据请求需要导入以下哪个模块==? import http from @ohos.net.http

3.==下列关于Web组件的属性,描述错误的是==?(C)

1
2
3
4
A. 设置是否开启应用中文件系统的访问,默认启用。$rawfile(filepath/filename)中rawfile路径的文件不受该属性影响而限制访问。
B. imageAccess设置是否允许自动加载图片资源,默认允许。
C. javaScriptAccess设置是否允许执行JavaScript脚本,默认不允许执行。
D. zoomAccess设置是否支持手势缩放,默认允许执行缩放。

4.==关于请求返回的响应码ResponseCode==,下列描述错误的是?(D)

1
2
3
4
A. ResponseCode.OK的值为200,表示请求成功。一般用于GET与POST请求。
B. ResponseCode.NOT_FOUND的值为404,表示服务器无法根据客户端的请求找到资源(网页)。
C. ResponseCode.INTERNAL_ERROR的值为500,表示服务器内部错误,无法完成请求。
D. ResponseCode.GONE的值为404,表示客户端请求的资源已经不存在。

1.==Web组件支持下列哪些属性或事件==?(A B D)

1
2
3
4
5
A. fileAccess(fileAccess: boolean)
B. javaScriptAccess(javaScriptAccess: boolean)
C. on(type: ‘headerReceive’, callback: AsyncCallback): void
D. onConfirm(callback: (event?: { url: string; message: string; result: JsResult }) => boolean)
E. destroy(): void

2.关于http模块描述正确的是?(A B C D)

1
2
3
4
A. http请求支持getpostput等常用的请求方式。
B. 可以使用on(‘headersReceive’)订阅请求响应头。
C. post请求的参数可以在extraData中指定。
D. 执行createHttp成功后,返回一个httpRequest对象,里面包括request、destroy、onoff方法。

1.首选项是关系型数据库。(错误)

2.应用中涉及到Student信息,如包含姓名,性别,年龄,身高等信息可以用首选项来存储。(错误)

3.同一应用或进程中每个文件仅存在一个Preferences实例。(正确)

==首选项key的最大长度限制大小为()字节? 80==

什么是首选项

首选项为应用提供Key-Value键值型的数据存储能力,支持应用持久化轻量级数据,并对其进行增删改查等。该存储对象中的数据会被缓存在内存中,因此它可以获得更快的存取速度
image.png|1000|1000

3.==下面哪个接口不是首选项提供的API接口==?(B)

1
2
3
4
A. get()
B. update()
C. put()
D. flush()

1.HarmonyOS提供的数据管理的方式都有哪些?(A B C D)

1
2
3
4
A. 首选项
B. 分布式数据服务
C. 关系数据库
D. 分布式数据对象

2.下面说法正确的有?(B C D)

1
2
3
4
A. 首选项遵循ACID特性
B. 首选项以Key-Value形式存取数据
C. 首选项存储数据数量建议不超过1万条
D. 首选项的keyString类型

1.构造进度条模板通知,name字段当前需要固定配置为_downloadTemplate_。(正确)

2.给通知设置分发时间,需要设置showDeliveryTime为false。(错误)

3.OpenHarmony提供后台代理提醒功能,在应用退居后台或退出后,计时和提醒通知功能被系统后台代理接管。(正确)

1.==将通道设置为下面哪个类型,可以显示横幅通知==?(A)

1
2
3
4
A. SlotType.SOCIAL_COMMUNICATION
B. SlotType.SERVICE_INFORMATION
C. SlotType.CONTENT_INFORMATION
D. SlotType.OTHER_TYPES

2.下列哪个是从API 9 开始支持的后台代理提醒功能模块。(A)

1
2
3
4
A. @ohos.reminderAgentManager
B. @ohos.reminderManager
C. @ohos.reminderAgent
D. @ohos.notificationManager

1.下面哪些方法可以移除通知?(A B)

1
2
3
A. cancel
B. cancelAll
C. removeSlot

2.后台代理提醒业务分为哪几种类型。(A B C)

1
2
3
4
A. 倒计时类
B. 日历类
C. 闹钟类
D. 日程类

1.元服务发布的国家与地区仅限于“中国大陆” (正确)

2.编译打包的软件包存放在项目目录build > outputs > default下 (正确)

1.创建应用时,应用包名需要和app.json5或者config.json文件中哪个字段保持一致? (C)

1
2
3
A. package
B. name
C. bundleName

4.上传发布软件包时,软件包的格式是什么?(B)

1
2
3
4
A. .zip
B. .app
C. .apk
D. .hap

5.发布后的应用可以在哪里获取?(A)

1
2
3
A. 华为应用市场
B. 华为服务中心
C. 华为生态市场

3.lottie使用loadAnimation方法加载动画。(正确)

1.通过ohpm安装lottie后,在哪个文件中会生成相关的配置信息?(B)

1
2
3
4
A. module.json5
B. oh-package.json5
C. app.json5
D. main_page.json

<HarmonyOS主题课>三方库-华为开发者学堂

2.lottie订阅事件的API为?(C)

1
2
3
4
A. lottie.setSpeed()
B. lottie.setDirection()
C. animationItem.addEventListener()
D. animationItem.removeEventListener()

1.下列属于lottie提供的动画控制API的是?(A B C D)

1
2
3
4
A. lottie.play()
B. lottie.pause()
C. lottie.stop()
D. lottie.goToAndPlay()

1.HarmonyOS云开发可以在一个项目中同时实现端侧和云侧功能的开发。(正确)

2.进行端云一体开发时,开发者需要精通前端、后端不同的开发语言。(错误)

1.开发者在DevEco Studio中,可以通过什么形式进行HarmonyOS云开发?(B)

1
2
3
4
A. IDE插件
B. 工程模板
C. 命令行工具
D. 可视化工具

2.HarmonyOS云开发当前支持最低API版本是多少?(D)

1
2
3
4
A. API 6
B. API 7
C. API 8
D. API 9

1.HarmonyOS云开发工程结构分哪些部分?(A B C)

1
2
3
4
5
A. 端开发工程(Application
B. 云开发工程(CloudProgram
C. 端侧公共库(External Libraries
D. 公共资源库(Resource

2.HarmonyOS云开发工程创建后,会自动开通哪些服务?(A B C D)

1
2
3
4
A. 云函数
B. 云数据库
C. 云存储
D. 认证服务

鸿蒙应用开发者认证考试(答案)
http://peiniwan.github.io/2024/04/7ca94f8f6069.html
作者
六月的雨
发布于
2024年4月6日
许可协议