#HarmonyOS NEXT体验官#鸿蒙系列沙龙璀璨星河有你,参加活动有感 原创
鸿蒙系列沙龙璀璨星河有你,参加活动有感
今天我来北京参加了51CTO的线下活动,收益匪浅。尤其是听了小波老师的分享,因为本人也是做Flutter的,于是特别关注这一块。
于是把小波老师的回答整理了一篇文章。
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上处理。
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。
这些是一些常见的策略和方法,但实际情况可能会因应用的具体需求和复杂性而有所不同。在开发过程中,需要根据实际情况进行综合考虑和优化,以确保应用在复杂交互场景下的响应速度和流畅性。
在最后,小波老师还提到了,说这是他们团队成员一起研发的杰作,不得不给这个团队点赞。据小波老师剧透,这一系列的专栏,马上也会上线到各大学习平台。
我截取了小波老师演讲内容里的效果图
效果
最后的最后,也祝愿鸿蒙生态越来越来,感谢小波老师的赠书。大家感兴趣的,也可以私信我,获取小波老师签名版赠书。