赞
踩
答案:
Button("C")
.onClick(() => {
this.nameList[0].name = "Jim"
})
分析:直接更新非一级数据不会触发UI刷新
答案:
SpaceBetween
分析:
答案:
3个
分析:同一应用内的所有同类型的ExtensionAbility运行在同一独立进程(除ServiceExtensionAbility、DataShareExtensionAbility外),跟UIAbility组件不在同一进程。
例如:一个应用有1个UIAbility组件、1个ServiceExtensionAbility、1个DataShareExtensionAbility、2个FormExtensionAbility、1个ImeExtensionAbility。则该应用在运行时,有三个进程:
UIAbility、ServiceExtensionAbility、DataShareExtensionAbility运行在同一个进程。
FormExtensionAbility运行在一个独立进程。
ImeExtensionAbility运行在一个独立进程。
答案:
$$this.isShow
分析:
build() { Column() { Button("transition modal 1") .onClick(() => { this.isShow = true }) .fontSize(20) .margin(10) .bindSheet($$this.isShow, this.myBuilder(), { height: this.sheetHeight, }) } .justifyContent(FlexAlign.Center) .width('100%') .height('100%') } }
答案:
通过GridLayoutOptions
分析:由不同大小的网格组成不均匀分布的网格布局场景在实际应用中十分常见,如上图所示。在Grid组件中,可以通过创建Grid时传入合适的 GridLayoutOptions 实现如图所示的单个网格横跨多行或多列的场景。
答案:
在hvigor目录下,单击鼠标右键,选择New > Module... 创建新的Module,此时module将创建在该文件目录下。
分析:hvigor :存放前端构建配置信息
答案:
反向调试能力:允许开发者在调试过程中回退回到之前的代码行或断点,不仅查看过去的堆栈信息,还能重现历史的全局、静态和局部变量状态,帮助深入理解代码历史行为,特别是对于复杂逻辑和难以复现的bug定位至关重要
分析:
答案:
Attach Debugger to Process,这允许他连接到正在运行的应用进程进行调试。
分析:
答案:
DevEco Profier依据 Top-Down设计理念,通过高度整合的数据展示范式,提供从宏观到微观的性能数据分析,加速开发者定位和解决问题的过程
分析:
答案:
调用 Session.start方法开启 metadata数据输出
分析:
答案:
将该特性做成按需加载的 hsp包,暴露接口给主模块使用。
分析:
答案:
应用工程如果包含多个 Module,在应用上架时,会将多个.hap文件打包成一个.app文件。
分析:
答案:
aboutToReuse
分析:组件复用时避免在aboutToReuse中执行耗时操作。 例如,在滑动场景中,使用组件复用通常需要用生命周期回调aboutToReuse去更新组件的状态变量。在滑动时,aboutToReuse会被频繁调用。如果在aboutToReuse中进行了耗时操作,将导致应用出现卡顿丢帧的问题。
import AbilityStage from ‘@ohos.app.ability.AbilityStage’;
import type Want from ‘@ohos.app.ability.Want’;
export default class MyAbilityStage extends AbilityStage {
this.instanceIndex = 0;
onAcceptWant(want: Want):string {
if(want.abilityName === ‘UIAbilityA’){
if(want.parameters && want.parameters.instanceKey === ‘test’){
return 'test_instance_' + this.instanceIndex++;
} else {
return'test_instance';
}
}
return 'MyAbilitystage';
}
}
依次调用如下方法4次启动 UIAbi1ityA,value分别是"test""test”“testA”“testA”,则当前运行期UIAbility实例有几个。
function testSpecified(context,value){ let want: Want ={ deviceId:", bundleName:'com.samples.stagemodelabilitydevelop', abilityName: 'UIAbilityA', moduleName:'entry', parameters:{ instanceKey: value } }; context.startAbility(want).then(()=>{ hilog.info(DOMAIN NUMBER, TAG, 'Succeeded in starting UIAbilityA.'); }) .catch((err:BusinessError)=>{ hilog.error(DOMAIN_NUMBER, TAG, "Failed to start UIAbilityA. code is ${err.code}) }) }
答案:
3
分析:由于UIAbilityA的启动模式配置为指定实例启动模式,在UIAbilityA启动之前,会先进入其对应的MyAbilityStage的onAcceptWant()生命周期回调中,解析传入的want参数,获取"instanceKey"自定义参数。根据业务需要通过MyAbilityStage的onAcceptWant()生命周期回调返回一个字符串Key标识。如果返回的Key对应一个已启动的UIAbility,则会将之前的UIAbility拉回前台并获焦,而不创建新的实例,否则创建新的实例并启动。
本题’test’返回key为’test_instance_1’
‘test’返回key为’test_instance_2’
‘testA’返回key为’test_instance’
‘testA’返回key为’test_instance’ 三个不同key值对应三个实例
A. hdc install -p ohosapp.hap
B. bm install -p ohosapp.hap
C. bm install -p ohosapp.hap -r
D. bm install -p /data/app/
答案:
hdc install -p ohosapp.hap
分析:bm是用来方便开发者调试的一个工具。bm工具被hdc工具封装,进入hdc shell命令后,就可以使用bm工具。 bm install -p
hdc(HarmonyOS Device Connector)是HarmonyOS为开发人员提供的用于调试的命令行工具,通过该工具可以在windows/linux/mac系统上与 真实设备或者模拟器进行交互。
hdc shell bm install -p package 通过bm安装
hdc app install [-r/-d/-g] package 安装指定的应用package
A.本地模拟器和真机的能力没有任何差异,真机上可以支持的能力在模拟器上都可以
B.本地模拟器当前不支持查看HiLog以及FaultLog
C.本地模拟器上运行的应用无需进行签名,简化了调试过程。
D.本地模拟器当前不支持单元测试框架和U测试框架的运行
答案:
本地模拟器上运行的应用无需进行签名,简化了调试过程
分析:
答案:
3
分析:栈由下到上,PageOne->PageTwo->PageOne
答案:
[0,2]
分析:
答案:
采用静态import方式引入对应跳转的页面。
分析:静态引入需要频繁更新
答案:
已发布的系统能力有可能会发生非兼容性变更,比如新增特性或修改问题导致的行为不兼容,这种情况下应用需要关注changelog并进行适配。
分析:
答案:
持续交付(CD,Continuous Delivery):指的是,频繁的将软件的新版本,交付给质量团队或者用户,以供评审。如果评审通过,代码就进入生产阶段。
分析:
答案:
rawfile目录,支持创建多层子目录,子目录名称可以自定义,文件夹内可以自由放置各类资源文件。目录中的资源文件会被编译成二进制文件,并赋予资源
分析:在Harmony OS开发中,存放资源文件的rawfile目录默认只支持一层目录结构。
开发者经常会涉及到文件的读写操作。其中,rawfile是一种常见的文件类型,可以用于存储一些静态的数据,例如:配置文件、模板文件等。
// module.json5配置文件: { "module": { "name": "entry", // ... "abilities": [ { "name": "EntryAbility", "srcEntry": "./ets/entryability/EntryAbility.ets", // ... "skills": [ { "entities": [ "entity.system.home" ], "actions": [ "ohos.want.action.home" ] } ], "metadata": [ { "name": "ohos.entry.shortcuts", "resource": "$profile:shortcuts_config" } ] } ] } }
// 在/resources/base/profile/目录下配置shortcuts_config.json配置文件: { "shortcuts": [ { "shortcutId": "id_test1", // 【shortcutLabel】字符串不符合匹配规则 "label": "shortcutLabel", "icon": "$media:shortcutIcon", "wants": [ { "bundleName": "com.ohos.hello", "moduleName": "entry", "abilityName": "EntryAbility" } ] } ] }
答案:
1
分析:shortcutLabel 字符串不符合匹配规则 “label”: "$string:shortcutLabel ",
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。