上海品茶

您的当前位置:上海品茶 > 报告分类 > PDF报告下载

HarmonyOS应用开发(开发套件)PART2.pdf

编号:159483 PDF 54页 5.10MB 下载积分:VIP专享
下载报告请您先登录!

HarmonyOS应用开发(开发套件)PART2.pdf

1、DevEco Hvigor高效编译,灵活构建高效编译构建工具DevEco Hvigor回顾新挑战最优分配资源 并行编译产物复用 增量构建自定义任务Api 任务流扩展多设备目标构建构建请求响应慢,无法复用ArkTS编译流程复杂任务扩展流无法独立开发、复用构建过程信息无法分析DevEco Hvigor构建过程新秘籍编译加速构建进程服务化最优化编译流程动态扩展构建任务插件编译流程插桩可视化展示构建过程动态展示历史记录日志呈现多目标构建多场景多目标构建product-target实践提升构建效率:进程常驻Daemon processBuild1Build2startreuseuse same daem

2、on多任务进程复用模块元数据一次加载,增量刷新缓存编译中间产物文件变更实时监听构建耗时减少60%开发工程师构建效率优化演示一次创建,系统常驻极速响应减少进程资源开销与损耗精简编译流程DevEco Hvigor构建过程新秘籍编译加速构建进程服务化最优化编译流程动态扩展构建任务插件编译流程插桩可视化展示构建过程动态展示历史记录日志呈现多目标构建多场景多目标构建product-target实践自定义插件hvigor/plugin-xxx动态扩展:自定义构建任务扩展插件自由灵活定制插件化开发范式一次开发 多工程复用默认插件ohos/hvigor-ohos-pluginhvigor/plugin-xxx

3、publish中心仓库自定义任务Task ATask BTask CBuild-in TaskCustom Taskimport hapTasks from ohos/hvigor-ohos-pluginimport xxxPlugin from hvigor/plugin-xxxexport default system:hapTasksplugins:xxxPlugin任务扩展插件演示TS自由实现灵活定制 高度集成DevEco Hvigor构建过程新秘籍编译加速构建进程服务化最优化编译流程动态扩展构建任务插件编译流程插桩可视化展示构建过程动态展示历史记录日志呈现多目标构建多场景多目标构建p

4、roduct-target实践可视化展示:构建过程可视化TaskArkTsTaskResourcesTaskC+开发工程师Event“version”:“1.0”“events”:Main ThreadWorker 0Worker 1Worker 2Worker nTask Flowdrawbuildanalyze任务细粒度拆分,构建信息分层展示多维可关联性视图展示历史构建过程可追溯构建过程可视化演示分层分级动态展示历史记录可追溯辅助构建过程分析DevEco Hvigor构建过程新秘籍编译加速构建进程服务化最优化编译流程动态扩展构建任务插件编译流程插桩可视化展示构建过程动态展示历史记录日志呈现

5、多目标构建多场景多目标构建product-target实践 统一工程、一套代码 自由定制源码、资源 可分可合组合应用包多目标产物构建-实践Module1Hap(target1)App(product1)target1Product1(开发环境)target2Product2(发布环境)Module1_target1.hapModule1_target2.hapA p p l y T oproduct1A p p l y T oproduct2pack.infopack.infoHap(target2)App(product2)resourcesourceresource1source1reso

6、urce2source2多目标产物构建演示多目标产物配置自定义编译资源“调调”大道通罗马代码和UI调试利器调试工具一览文件管理,操作便捷File BrowserUI布局,直观易懂Hilog日志过滤,精准定位异常事件,主动上报FaultLog反向调试Attach调试单步调试,堆栈查看,行行剖析热重载跨语言调试ArkUI InspectorASan界面开发1真机效果不一致 问题定位难组件错综复杂 代码定位难应用运行3堆栈和内存问题难定位crash问题分析难逻辑代码开发调试整体流程耗时缺少设备无法调试多线程问题复现难调试难2问题定位面临的痛点问题如何更好定位设备上UI问题ArkUI Inspecto

7、r-UI分析利器 三段联动 属性过滤 源码跳转如何进一步提升调试效率热重载新增支持能力支持更多的场景声明访问控制修饰符全局函数类/接口/枚举成员方法/变量灵活且多样支持多类型设备灵活配置调试入口轻量而高效轻量级调测环境即选即用 快速启动预览器支持调试反向调试支持偶现问题转换为“必现”问题正向调试Snapshot 1Snapshot 3Snapshot 4Snapshot 5Auto RecordAuto Record反向调试Snapshot 1Snapshot 4反向调试引擎反向调试引擎1、录制点决策(提升调试速度)2、调试信息增量存储(减少系统消耗)Snapshot 2RecordRecor

8、dReplayReplayResolveResolve反向调试使用TimeLine定位问题能力提升正反向调试TimeLine 调试聚焦场景多线程并发问题高实时性时序问题如何更好定位应用崩溃问题支持ASan检测能力快速定位内存问题检测内存泄漏检测空指针访问检测堆栈和内存越界检测堆栈溢出检测全局缓冲区溢出一键启动检测操作简单 问题直观日志分析能力持续增强 日志展示进一步优化 多维度过滤能力增强 异常堆栈源码跳转下一步下一步演进演进更多分析工具界面分析Network InspectorDatabase InspectorUI布局检测3D图层分析DevEco UltraDevice高性能、场景化模拟器

9、,轻松完成应用调试使用模拟器调试应用的问题系统服务、应用缺失系统API与真机表现不一致运行性能与真机差距较大无法调试重型应用模拟器件种类不全无法模拟复杂应用场景性能体验系统能力场景模拟应用调试场景模拟场景化模拟 户外跑步 户外骑行 驾驶导航 基础器件模拟 GPS定位 WIFI连接 电池电量 GPS快速模拟支持自定义经纬度也可以一键切换城市定位户外跑步场景模拟一键注入场景数据无需复杂操作、专注应用调试模拟器性能大幅提升优化绘图模块 支持高清、高帧率的画面 轻松支持重型应用运行调试重构器件模型 提升器件响应速度 提供接近真机的流畅体验高性能器件模型VirtioKernel高带宽通道高带宽通道低延迟

10、通道低延迟通道GPUGPUWIFIWIFIInputInputSensorSensorAppGuestHost高吞吐器件:大量的数据通讯,对带宽敏感低延迟器件:快速的操作响应,对时延敏感Hardware GPUHardware GPU深度优化的高性能绘图Graphics APIGraphics APIAppContextResourceShared MemoryContextResourceShared MemoryAPI 1API 2API 3DataDataQueueQueuedatadataUIGuestHostRenderRenderEngineEngineRenderedPixels

11、让应用更流畅,DevEco Profiler助您轻松分析性能问题常见性能问题应用卡顿功能响应慢设备发热冷启动慢热启动慢滑动丢帧内存泄漏内存占用多不跟手DevEco Profiler全新升级Frame卡顿丢帧Launch应用启动能耗、FPS、GPU实时监控场景更多场景更多场景化Top-Down交互设计Data drilling直通源码多源数据自动抓取功能更强大功能更强大典型场景:卡顿丢帧数据齐全,一目了然-Realtime Monitor实时监测多项性能指标 系统/异常事件 Ability生命周期 CPU使用率 内存使用量 FPS GPU利用率 能耗对症下药-模板场景化场景化模板自动采集多源数据

12、HiProfilerHiPerfHiTraceHiDumperArkVM丢帧背后的故障模型Render ServiceAppDisplayVsync1Vsync2Vsync3无卡顿丢帧的渲染过程Vsync4Vsync5Render ServiceAppDisplayVsync1Vsync2Vsync3常见应用侧卡顿导致丢帧的渲染过程Vsync4Vsync5丢帧借助System trace,快速分析产生卡顿的问题任务及时间段专家经验融入泳道一眼即得渲染过程查看场景化泳道,初步定位卡顿时段 卡顿帧标识 正常帧标识 帧提交关系 Trace快速跳转分析卡顿时段函数热点,完成定位双击直达源码快速分析优化

13、 函数耗时Top-Down 函数耗时火焰图 Heaviest Stack 函数搜索 ArkTS源码跳转 Native源码跳转验证优化效果*注:数据来源于DevEco Profiler Frame主泳道计算结果优化前:Render Service卡顿帧占比21.7%,应用侧卡顿帧占比36.5%优化后:Render Service卡顿帧占比9.4%,应用侧卡顿帧占比15.4%循环迭代迭代-验证-优化,解决问题运行/验证定位/优化构建/推包Realtime MonitorFrameDevEco Hvigor应用使用过程有明显卡顿发现列表滑动时有明显卡顿使用DevEco Profiler的Realti

14、me Monitor实时监控发现快报页面常驻时也存在设备资源占用过多的现象卡顿问题发现、定位、优化思路Step 0 发现问题-Realtime Monitor检测问题Step 1 采集数据-使用Frame场景化模板录制数据Step 2 问题定位-分析System Trace定位卡顿时段Step 3 根因分析-分析函数热点,定位优化Step 4 验证/迭代实时监控观测结果:1.FPS持续在5070帧,但界面并无变化。2.CPU占用率持续10+%,GPU持续4+%占用3.能耗监控显示除Display之外(符合预期),CPU持续高能耗(不符合预期)初步定界:重复绘制渲染,引起持续CPU/GPU占用问

15、题一 快报页面常驻时设备资源消耗过多初步分析系统Trace深度录制每一帧都在绘制且都无法按时完成深入分析函数热点双击一键跳转源码验证代码中误用index属性,导致数据项键值的生成逻辑有误,造成非预期的重复绘制渲染定位分析优化后不再过多消耗设备资源优化ForEach(arr:any,/数据itemGenerator:(item:any,index?:number)=void,/组件生成器keyGenerator?:(item:any,index?:number)=string /键值生成器)1.去除itemGenerator中使用的index2.优化键值生成器的逻辑ForEach(thisthis.newsData,(item,index)=ListItem()if if(thisthis.newsItem)thisthis.createNewsItem(item,index),item=item)热点代码使用Frame场景化模板录制分析结论:1.列表滑动时有大量App侧卡顿帧出现2.代码加载的数据项超出界面实际可显示范围优化解决:使用LazyForEach懒加载,避免多余计算问题二 列表滑动时明显卡顿

友情提示

1、下载报告失败解决办法
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站报告下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。

本文(HarmonyOS应用开发(开发套件)PART2.pdf)为本站 (张5G) 主动上传,三个皮匠报告文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三个皮匠报告文库(点击联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。
会员购买
小程序

小程序

客服

专属顾问

商务合作

机构入驻、侵权投诉、商务合作

服务号

三个皮匠报告官方公众号

回到顶部