粘贴控件是一种特殊的系统安全控件,它允许应用在用户的授权下无提示地读取剪贴板数据。在应用集成粘贴控件后,用户点击该控件,应用读取剪贴板数据时不会弹窗提示。可以用于任何应用需要读取剪贴板的场景,避免弹窗提示对用户造成干扰。例如,用户在应用外(如短信)复制了验证码,要在应用内粘贴验证码。用户原来在进入应用后,还需要长按输入框、在弹出的选项中点击粘贴,才能完成输入。而使用粘贴控件,用户只需进入应用后...
安全控件是系统提供的一组系统实现的ArkUI组件,应用集成这类组件就可以实现在用户点击后自动授权,而无需弹窗授权。它们可以作为一种“特殊的按钮”融入应用页面,实现用户点击即许可的设计思路。相较于动态申请权限的方式,安全控件可基于场景化授权,简化开发者和用户的操作,主要优点有:1.用户可掌握授权时机,授权范围最小化。2.授权场景可匹配用户真实意图。3.减少弹窗打扰。4.开发者不必向应用市场申请权限,简化操作。...
在鸿蒙开发中,系统提供了PhotoViewPicker选择图片,cameraPicker拍照和录视频,此方式能够达到无需向用户申请权限就能选图片、拍照和录视频。除了用户操作的选图、拍照和录视频,其它时间APP无权获取相册图片,无权调用相机,对于用户来说,使用相册和相机都是很明确的时机,安全性非常高。以下来看看具体的使用方式。使用PhotoViewPicker选择图片我们new一个PhotoViewPicker并调用select方法,就可以打开系统图片选择器进行图...
Hvigor允许开发者实现自己的插件,开发者可以定义自己的构建逻辑,并与他人共享。Hvigor主要提供了两种方式来实现插件:基于hvigorfile脚本开发插件、基于typescript项目开发。下面以基于hvigorfile脚本开发插件进行介绍。基于hvigorfile脚本开发基于hvigorfile.ts脚本开发的方式,其优点是可实现快速开发,直接编辑工程或模块下hvigorfile.ts即可编写插件代码,不足之处是在多个项目中,无法方便的进行插件代码的复用和共享分...
Hivgor脚本文件在构建的生命周期中Hvigor使用两个脚本文件来完成插件、任务以及生命周期hook的注册:hvigorconfig.ts:此文件在整个项目中只有根目录下存在一份,不是构建必须的文件并且默认不存在,如有需要可自行创建,此文件被解析执行的时间较早,可用于在Hvigor生命周期刚开始时操作某些数据。hvigorfile.ts:此文件在每个node下都有一份,是构建的必须文件,在此文件中可以注册插件、任务以及生命周期hook等操作。任务与...
编译构建工具DevEcoHvigor(以下简称Hvigor)是一款基于TS实现的构建任务编排工具,主要提供任务管理机制,包括任务注册编排、工程模型管理、配置管理等关键能力,提供专用于构建和测试应用的流程和可配置设置。DevEcoStudio使用构建工具Hvigor来自动执行和管理构建流程,实现应用服务构建任务流的执行,完成HAPAPP的构建打包。Hvigor可独立于DevEcoStudio运行,这意味着,你可以在DevEcoStudio内、命令行工具或是集成服务器上...
HarmonyOS5.0.1Beta3,是HarmonyOS开发套件基于API13正式发布的首个Beta版本。该版本在OS能力上主要增强了CAPI的相关能力,多个特性补充了CAPI供开发者使用。OS平台能力增加首先是系统能力增加了,这次增加了很多C接口能力,像我们用得比较多的场景有:Ability组件中元能力新增CAPI,可以从ApplicationContext中获取cache路径、Area以及bundleName的能力;ArkData组件中,Preferences可能在CAPI中使用了,但是不支持CAPI与ArkTS...
我们在进行页面跳转时,很多情况下都得考虑登录状态问题,比如进入个人信息页面,下单交易页面等等。在这些场景下,通常在页面跳转前,会先判断下用户是否已经登录,若已登录,则跳转到相应的目标页面,若没有登录,则先跳转到登录页面,然后等着获取登录状态,若登录页面关闭时,能获取到已登录,则继续跳转到目标页,若用户取消了登录,则终止后面的行为。这样的处理通常会存在一些问题,例如很多页面都与登录状态相关,这样...
2024-11-15 12:11:46 2074浏览 0点赞 1回复 1收藏
Navigation组件适用于模块内和跨模块的路由切换,通过组件级路由能力实现更加自然流畅的转场体验,并提供多种标题栏样式来呈现更好的标题和内容联动效果。一次开发,多端部署场景下,Navigation组件能够自动适配窗口显示大小,在窗口较大的场景下自动切换分栏展示效果。根页面设置我们在Entry的入口处Index.ets使用Navigation当作根页面,这里会面临一个问题,怎么从启动页跳转到首页,并关闭启动页,使用首页一直留在页面栈中...
2024-11-14 22:37:59 1569浏览 0点赞 0回复 0收藏
Navigation是路由导航的根视图容器,一般作为页面(Entry)的根容器,包括单栏(Stack)、分栏(Split)和自适应(Auto)三种显示模式。Navigation组件适用于模块内和跨模块的路由切换,通过组件级路由能力实现更加自然流畅的转场体验,并提供多种标题栏样式来呈现更好的标题和内容联动效果。一次开发,多端部署场景下,Navigation组件能够自动适配窗口显示大小,在窗口较大的场景下自动切换分栏展示效果。Navigation组件主要包...
2024-11-14 12:35:59 2234浏览 0点赞 1回复 0收藏
153.crossdeviceappdevfontsize字体大小要求至少为8fp以便于阅读154.crossdeviceappdevgridcolumnsspan不推荐开发者将栅格中所有的GridCol子组件只设置span属性,且值与父组件的columns属性相等155.crossdeviceappdevgridspanvalue在栅格布局组件GridCol中,span和offset不建议使用小数156.crossdeviceappdevsizeunit组件通用属性width、height和size,应当使用vp作为单位157.crossdeviceappdevtouchtargetsize组件通用属性resp...
2024-11-13 12:35:03 1487浏览 0点赞 0回复 0收藏
102.performancehparktsnouseanyexportcurrent避免使用export导出当前module中定义的类型和数据103.performancehparktsnouseanyexportother避免使用export导出其他module中定义的类型和数据104.performancehparkuiavoidemptycallback避免设置空的系统回调监听105.performancehparkuiavoidupdateautostatevarinaboutToReuse避免在aboutToReuse中对自动更新值的状态变量进行更新106.performancehparkuicombinesamearganimateto建...
2024-11-13 12:33:52 1438浏览 0点赞 0回复 0收藏
52.typescripteslintnounnecessarytypearguments当类型参数和默认值相同时,不允许显式使用53.typescripteslintnounnecessarytypeassertion禁止不必要的类型断言54.typescripteslintnounnecessarytypeconstraint不允许在泛型中使用不必要的约束条件55.typescripteslintnounusedexpressions代码中禁止包含未使用的表达式56.typescripteslintnounusedvars禁止定义未使用的变量57.typescripteslintnouselessconstructor禁止不必要...
2024-11-12 12:19:41 1318浏览 0点赞 0回复 0收藏
1.typescripteslintadjacentoverloadsignatures建议函数重载的签名保持连续2.typescripteslintawaitthenable不允许对不是“Thenable”对象的值使用await关键字,相反对“Thenable”对象必须使用await,例如对Promise对象。3.typescripteslintarraytype定义数组时,使用统一的样式,如都使用T[]或都使用Array。json"typescripteslintarraytype":["error",{arrayarraysimplegeneric"default":"array"}]default的值设置为array时,...
2024-11-12 12:19:05 1683浏览 0点赞 0回复 0收藏
在开始之前,我们先明确自定义组件和页面的关系:自定义组件:Component装饰的UI单元,可以组合多个系统组件实现UI的复用,可以调用组件的生命周期。页面:即应用的UI页面。可以由一个或者多个自定义组件组成,Entry装饰的自定义组件为页面的入口组件,即页面的根节点,一个页面有且仅能有一个Entry。只有被Entry装饰的组件才可以调用页面的生命周期。页面生命周期,即被Entry装饰的组件生命周期,提供以下生命周期接口:onPage...
2024-11-10 16:01:58 2092浏览 0点赞 2回复 0收藏
Navigation作为路由容器,其生命周期承载在NavDestination组件上,以组件事件的形式开放。其生命周期大致可分为三类,自定义组件生命周期、通用组件生命周期和自有生命周期。其中,aboutToAppear和aboutToDisappear是自定义组件的生命周期(NavDestination外层包含的自定义组件),OnAppear和OnDisappear是组件的通用生命周期。剩下的六个生命周期为NavDestination独有。生命周期时序如下图所示aboutToAppear:在创建自定义组件后...
2024-11-10 16:01:21 1181浏览 0点赞 0回复 0收藏