#HarmonyOS NEXT体验官#鸿蒙系列沙龙璀璨星河有你,参加活动有感 原创

早起睡不够
发布于 2024-7-27 16:34
浏览
0收藏

鸿蒙系列沙龙璀璨星河有你,参加活动有感

今天我来北京参加了51CTO的线下活动,收益匪浅。尤其是听了小波老师的分享,因为本人也是做Flutter的,于是特别关注这一块。

#HarmonyOS NEXT体验官#鸿蒙系列沙龙璀璨星河有你,参加活动有感-鸿蒙开发者社区

于是把小波老师的回答整理了一篇文章。

1、对于Flutter For Harmony,有哪些策略可以确保应用的响应速度和流畅性,特别是在复杂交互的场景下?

我们首先要了解到的是Flutter For Harmony 是一个基于 Flutter SDK 对 OpenHarmony 的兼容拓展,可支持使用 Flutter Tools 指令编译和构建 OpenHarmony 应用程序。想要确保应用的响应速度和流畅性,那么就要从两方面来处理:

Flutter层

  • 减少 Widget 重建:Widget 重建是 Flutter 应用中的一个常见性能问题,因为它会导致不必要的渲染和绘制。减少 Widget 重建的方法包括使用const构造函数、使用 Key 标识 Widget、使用StatefulWidget等。

  • 避免过多的 UI 重绘:避免过多的 UI 重绘可以提高应用的性能。可以使用shouldRepaint方法来判断是否需要重绘。

  • 优化图片加载:在 Flutter 中,图片加载是一个常见的性能问题。可以使用缓存或预加载技术来优化图片加载,以减少不必要的网络请求。

  • 避免过多的网络请求:过多的网络请求会导致应用响应速度变慢。可以使用缓存或者减少请求次数的方法来减少网络请求,从而提高应用的性能。

  • 优化布局:布局是应用性能的重要因素之一。可以使用 Flex 布局或者使用CustomMultiChildLayout等方法来优化布局,以提高应用的性能。

  • 使用异步操作:在应用中使用异步操作可以避免 UI 卡顿的问题。可以使用Future、Stream等异步操作来优化应用的性能。

  • 避免过多的内存使用:过多的内存使用会导致应用响应速度变慢。可以使用 Flutter 自带的内存分析工具来查找内存泄漏问题,从而避免过多的内存使用。

HarmonyOS

对于部分数据处理,可以从Fluuter传到鸿蒙侧,由鸿蒙原生处理,再返回。

数据请求等耗时操作也可以在HarmonyOS上处理。

#HarmonyOS NEXT体验官#鸿蒙系列沙龙璀璨星河有你,参加活动有感-鸿蒙开发者社区

2、在Flutter For Harmony开发中,如何处理和解决与原生HarmonyOS组件的兼容性问题?

我们首先要了解的到的是HarmonyOS 与 Flutter 的架构和设计理念有所不同,可能会存在一些兼容性问题。为了解决这些问题,站在我的层面,包括我们上个月帮助初创企业做业务迁移的时候采用的如下方法,可以借鉴:

  • 使用 Flutter Channel:可以使用 Flutter Channel来访问原生 HarmonyOS 组件的能力。通过这种方式可以提供Flutter与原生HarmonyOS组件 互相交互的接口,使 Flutter 应用能够与原生 HarmonyOS 互相调用 ,从而进行集成

  • 进行适配和调整:根据 HarmonyOS 的特性和要求,对 Flutter 应用进行适配和调整。这可能包括修改代码、调整布局、处理权限等方面的工作。

  • 与 HarmonyOS 官方团队合作:与 HarmonyOS 团队保持沟通和合作,了解他们的开发计划和技术路线图。及时获取关于兼容性的更新和支持,以便更好地解决问题。因为我们也是华为的合作企业,所以在这方面,华为支持力度还是很不错的。

  • 进行测试和验证:在不同的 HarmonyOS 设备上进行充分的测试和验证,确保 Flutter 应用在各种场景下都能正常运行,并与原生组件兼容。包括我们使用Mate 60,Mate60 Pro,X5,以及在2in1上做各种测试。

3、在HarmonyOS上运行Flutter应用时,如何处理不同设备间的屏幕适配和性能优化问题?

屏幕适配:

不同设备的屏幕尺寸和分辨率可能不同,因此需要进行屏幕适配。可以使用 Flutter 的布局和响应式设计来适应不同的屏幕尺寸。此外,还可以使用第三方库如flutter_screenutil来实现更精细的屏幕适配。

性能优化:

为了在不同设备上获得良好的性能,可以采取以下优化措施:

  • 减少资源消耗:优化图片、音频等资源的使用,减少应用的内存占用。

  • 使用合适的数据结构和算法:根据具体情况选择合适的数据结构和算法,提高应用的运行效率。

  • 进行性能测试:在不同设备上进行性能测试,找出性能瓶颈并进行优化。这里面我们就可以使用vscode,DevEcoStudio DevTesting等工具。

  • 尽可能的Flutter只是用来写UI。

这些是一些常见的策略和方法,但实际情况可能会因应用的具体需求和复杂性而有所不同。在开发过程中,需要根据实际情况进行综合考虑和优化,以确保应用在复杂交互场景下的响应速度和流畅性。

在最后,小波老师还提到了,说这是他们团队成员一起研发的杰作,不得不给这个团队点赞。据小波老师剧透,这一系列的专栏,马上也会上线到各大学习平台。

我截取了小波老师演讲内容里的效果图

效果

#HarmonyOS NEXT体验官#鸿蒙系列沙龙璀璨星河有你,参加活动有感-鸿蒙开发者社区

#HarmonyOS NEXT体验官#鸿蒙系列沙龙璀璨星河有你,参加活动有感-鸿蒙开发者社区

最后的最后,也祝愿鸿蒙生态越来越来,感谢小波老师的赠书。大家感兴趣的,也可以私信我,获取小波老师签名版赠书。

#HarmonyOS NEXT体验官#鸿蒙系列沙龙璀璨星河有你,参加活动有感-鸿蒙开发者社区

©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
已于2024-7-27 16:34:14修改
1
收藏
回复
举报
回复
    相关推荐