Hybrid应用鸿蒙化方案的核心改造有哪些?

Hybrid 应用鸿蒙化方案中三方面核心改造是什么?

阅读 1.6k
1 个回答

Hybrid应用开发是介于Web应用和系统应用两者之间的应用开发技术,兼具“系统应用良好交互体验”的优势和“Web应用跨平台开发”的优势。其主要原理是由Native通过JSBridge通道提供统一的API,然后用Html/CSS实现界面,JS来写业务逻辑,能够调用系统API,最终的页面在Webview中显示。
业务实现中的关键点:
1、双端通信:JSBridge扮演Webview进程与ArkUI主进程沟通的桥梁,是一种双向通信的机制。HarmonyOS系统提供Web组件以及@ohos.web.webview等ArkWeb API来进行Web开发。可以通过WebMessagePort以及javaScriptProxy代理的方式实现JSBridge。
2、API鸿蒙化:H5业务设计中除了使用W3C API外,还可以使用ArkTS侧API拓展来访问设备
3、组件鸿蒙化:HarmonyOS提供同层渲染能力把原生组件直接渲染到WebView层级,从而获得更大的灵活性以及性能上获得更好表现。开发者可通过Web组件同层渲染相关属性来进行控制:enableNativeEmbedMode开关控制;onNativeEmbedLifecycleChange处理同层渲染生命周期:CREATE/UPDATE/DESTROY;onNativeEmbedGestureEvent处理交互事件。同层渲染功能要求前端页面文件中显式使用embed标签,并且embed标签内type必须以“native/”开头。使用Vue等框架可以方便地进一步封装embed标签生成自定义组件,并增加更多属性、事件和方法,通过JSBridge与ArkTS侧进行同步。在ArkTS侧,对应地需要自定义实现一个原生组件或者使用系统内置组件,通过NodeContainer组件进行动态挂载。

参考文档:https://developer.huawei.com/consumer/cn/doc/best-practices-V...

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进