Nebula

H5 容器

h5-container

Service, Session 和 Page

H5Service, H5SessionH5Page 是 Nebula 里的基础元件,请点击这里来了解更多。

JS Bridge

Nebula JS Bridge 是连接原生层和 Javascript 的沟通桥梁,它将 Javascript 代码转译成能在系统框架运行的字节码,同时也把原生层的数据结构转成 Javascript 对象使其能在 Javascript 层处理。

市面上有许多 JS Bridge 的实现方式,大多数都是使用截获 prompt 来实现的,但是 Nebula 使用的是 console.log API 的方法,因为使用 prompt 有以下几点问题

  • prompt 是一个阻塞的 API,如果在原生层运行时间太久的话会导致页面无响应
  • 在 Webview 没有截获 prompt 的情况下,会有一个模态视窗被创造出来。所以如果 Javascript 代码在 JS Bridge 初始化还没有完成前就调用的话, prompt 所创造出的模态视窗将被显示且可能迷惑用户

事件

关于事件是如何从服务到页面的派遣,请参阅基础来了解更多。

API 管理器

Nubula 已经提供许多 JS API 供开发者使用,比如操控 UI,显示对话框和 Toast,以及使用 RCP 服务。请点击这里了解更多详情。

插件管理器

如果现有的 JS API 无法满足你的业务需求,你也可以选择创造一个新的插件。你只需把原生代码打包在插件中,在管理器里注册该插件,便可在 Javascript 层使用新的 JS API 了,请点击这里来了解更多关于插件定制的资讯。