Harmony Os应用开发
文章平均质量分 75
k&p
知其不可行而行之
展开
-
HarmonyOs应用权限申请,system_grant和user_grant区别。本文附头像上传申请user-grant权限代码示例
user_grant权限授权要基于用户可知可控的原则,需要应用在运行时主动调用系统动态申请权限的接口,系统弹框由用户授权,用户结合应用运行场景的上下文,识别出应用申请相应敏感权限的合理性,从而做出正确的选择。user_grant指的是用户授权类型,在该类型的权限许可下,应用被允许访问的数据将会涉及到用户或设备的敏感信息,应用被允许执行的操作可能对系统或者其他应用产生严重的影响。系统不鼓励频繁弹窗打扰用户,如果用户拒绝授权,将无法再次拉起弹窗,需要应用引导用户在系统应用“设置”的界面中手动授予权限。原创 2024-08-24 16:04:53 · 2007 阅读 · 0 评论 -
HarmonyOs并发编程中worker 和 taskpool区别
创建Worker的线程称为宿主线程(不一定是主线程,工作线程也支持创建Worker子线程),Worker自身的线程称为Worker子线程(或Actor线程、工作线程)。由于TaskPool的工作线程会绑定系统的调度优先级,并且支持负载均衡(自动扩缩容),而Worker需要开发者自行创建,存在创建耗时以及不支持设置调度优先级,故在性能方面使用TaskPool会优于Worker,因此大多数场景推荐使用TaskPool。而Worker偏向线程的维度,支持长时间占据线程执行,需要主动管理线程生命周期。原创 2024-08-24 14:17:07 · 943 阅读 · 0 评论 -
HarmonyOs提升应用启动和响应速度
使用AOT模式AOT(Ahead of Time)提前编译,能够在Host端将字节码提前编译成Target端可运行的机器码,这样字节码可以获得充分编译优化,放到Target端运行时可以获得加速。提升应用启动和响应速度使用异步加载:使用异步加载可以在后台线程中处理耗时操作,从而提升应用响应速度延迟加载:使用List,Grid以及Swiper等容器组件时,配合系统提供的LazyForEach数据懒加载能力,可以有效减少应用启动时间和内存占用。原创 2024-08-06 16:47:38 · 957 阅读 · 0 评论 -
Harmony Os 调取接口报错:{“code“:2300007,“message“:“Couldn‘t connect to server“}
本地模拟器无法通过localhost或者127.0.0.1进行访问,必须使用主机的真实IP地址。原因:模拟器和主机的网络连接模式是为 NAT 模式的,有兴趣的可以了解一下。重写编译运行,成功拉取到mock数据。原创 2024-08-06 16:27:07 · 232 阅读 · 0 评论 -
HarmonyOs一多能力开发简要
元素可以根据相对关系自动变化以适应外部容器变化的布局能力。大致有七种自适应布局能力,这些布局可以独立使用,也可多种布局叠加使用。原创 2024-08-05 13:36:03 · 792 阅读 · 0 评论 -
HarmonyOS NEXT开发,全屏避让顶部系统任务栏(沉浸式体验),智能适配多机型
获取到规避区域高度后,在最大的块级元素中利用padding({top:avoidHeight})就不会被系统任务栏遮挡了。原创 2024-07-23 15:35:40 · 263 阅读 · 0 评论 -
@Builder和@BuilderParam的实战使用,封装自定义通用导航栏
ArkUI引入了@BuilderParam装饰器,@BuilderParam用来装饰指向@Builder方法的变量(@BuilderParam是用来承接@Builder函数的),开发者可在初始化自定义组件时对此属性进行赋值,为自定义组件增加特定的功能。该装饰器用于声明任意UI描述的一个元素,类似slot占位符。原创 2024-07-22 13:47:27 · 849 阅读 · 0 评论 -
页面和自定义组件生命周期
页面生命周期,即被@Entry装饰的组件生命周期,提供以下生命周期接口:组件生命周期,即一般用@Component装饰的自定义组件的生命周期,提供以下生命周期接口:原创 2024-07-08 16:49:55 · 1028 阅读 · 0 评论 -
UIAbility的生命周期(Create、Foreground、Background、Destroy)
当用户打开、切换和返回到对应应用时,应用中的UIAbility实例会在其生命周期的不同状态之间转换。UIAbility类提供了一系列回调,通过这些回调可以知道当前UIAbility实例的某个状态发生改变,会经过UIAbility实例的创建和销毁,或者UIAbility实例发生了前后台的状态切换。原创 2024-07-05 16:13:57 · 726 阅读 · 0 评论 -
HarmonyOs状态管理中@State,@Prop,@Link装饰器用法区别
1.@State:装饰的变量,或称为状态变量,一旦变量拥有了状态属性,就和自定义组件的渲染绑定起来。当状态改变时,UI会发生对应的渲染刷新。2. @Prop:装饰的变量和父组件建立单向的同步关系(跟vue的prop大同小异):3.@Link:装饰的变量与其父组件中的数据源共享相同的值(可以稍稍理解成vue中的v-model)。不能在@Entry装饰的自定义组件中使用。原创 2024-06-25 22:20:42 · 1232 阅读 · 0 评论