QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

SuperWebView:系统 WebView 的增强替代

  • 2016-01-17
  • 本文字数:1385 字

    阅读完需:约 5 分钟

1 月 12 日,移动应用云服务提供商 APICloud 举行了新产品发布会,在会上向外界发布了其移动开发解决方案 SuperWebView ,顾名思义,这是一个增强版的 WebView,可以替换现有 App 中的 WebView,实现更好的 UI 性能,并提供原生能力。在会后,APICloud CEO 刘鑫接受了媒体的采访,介绍了关于 SuperWebView 的更多细节。

WebView 是 Android 和 iOS 的一种系统组件,能够加载超链接并渲染内容、运行 JavaScript 脚本。

SuperWebView 在系统 WebView 的基础上,添加了系统和第三方 API,同时将一些性能关键的地方在运行时编译为原生 UI,如转场、导航等,使其兼有 Web 的灵活和原生的性能。其特性如下:

  • 支持 Android 2.3+ 及 iOS 7+
  • API 访问权限控制管理功能
  • Android/iOS 与 Html5 之间事件 / 数据交互功能
  • Web 与 Native 界面直接的混合布局和混合渲染功能
  • 加速数据加载、点击响应和滚动速度
  • 常用手势支持、界面切换动画
  • 访问资源控制管理功能
  • 执行 Html5 中指定 Javascript 脚本功能
  • 模块扩展功能,该功能继承自 APICloud 终端引擎的模块扩展能力
  • Android&IOS 开发中常用的网络请求框架,缓存管理等工具接口
  • 统一的生命周期管理,窗口系统,用户体验

SuperWebview 整体 API 开放架构如下图:

据 官网介绍,SuperWebView SDK 能力包括 APICloud 平台现有的所有端 API,以及包括增量更新、版本管理、数据云、推送云、统计分析、积木式模块化开发等,以及 APICloud 的模块 Store 里的第三方 API,开发者需要在 APICloud 后台选择要使用的模块,云端会将其打包进一个定制的 SDK,可集成到开 发者现有的 App 中,也可当作独立的 APP 快速开发框架在混合开发中使用。

在将 WebView UI 转换为原生 UI 组件上,SuperWebView 采用的是半翻译的方式,仅将一部分界面转换为原生 UI,与其对应的 React Native 是全翻译。在谈到 SuperWebView 与 React Native 的比较时,刘鑫表示,React Native 的全翻译需要重新学习和转换,有一定的门槛,而 SuperWebView 直接用标准的 HTML,门槛相对较小。另外,类似 React Native 这类移动开发框架在国内有本地化的问题,国内的移动设备特别是 Android 碎片化问题严重,国外框架在开发的时候很少考虑适配问题,而这在 国内是不能不考虑的,SuperWebView 在开发时考虑了国内的特点,对诸多机型和系统都做了适配,这也是 SuperWebView 的优势之一。

在 发布会上,春秋航空的移动产品总监朱亮作为 SuperWebView 的内测用户进行了分享。他表示,对于他们这样开发能力不是太强的开发者来 说,Hybrid 是他们进行移动开发的首选,但 Hybrid 有严重的性能问题,因此像 React Native 这样的解决方案一出来就受到广泛的关注。同时,另一些解决方案无法和现有的产品进行整合,只能推翻重写,这也是他们不愿意看到 的,SuperWebView 提供了 SDK,他们只需要进行少量的改写即可接入,从而改进性能,获得接近原生应用的性能,这是他们选择 SuperWebView 的原因。

随着 React Native 发布以来,Web 和移动开发融合的脚步一直在前进,很多人都在探索既具有 Web 开发的便利,又拥有原生开发的性能的解决方案,这其中涉及到便 利与性能的权衡。SuperWebView 在 Web 开发的基础上,在部分性能关键的地方采用原生 UI,又从 WebView 上找突破口从而兼容已有应用,算 是一个不错的思路。

目前,SuperWebView 已经在官网上线,其文档也同步上线。另外官方也提供了一些开发工具和插件供开发者下载使用。

2016-01-17 02:566498
用户头像

发布了 164 篇内容, 共 108.8 次阅读, 收获喜欢 392 次。

关注

评论

发布
暂无评论
发现更多内容

第十一周作业

solike

Spock单元测试框架实战指南四 - 异常测试

Java老k

Java 单元测试 spock

AR智能眼镜会成未来趋势

anyRTC开发者

人工智能 音视频 WebRTC RTC

ZEGO即构科技荣获36氪【WISE2020中国新经济之王最具影响力企业】

ZEGO即构

5种分布式事务方案与阿里的 Seata 中间件

Bruce Duan

分布式事务 seata

《前端算法系列》数组去重

徐小夕

Java 面试 算法 大前端

一个依赖搞定 Spring Boot 反爬虫,防止接口盗刷!

Bruce Duan

反爬虫组件 kk-anti-reptile

架构师训练营第一期 - 第十一周课后作业

卖猪肉的大叔

极客大学架构师训练营

架构词典:语言

lidaobing

架构 语言

「生产事故」MongoDB复合索引引发的灾难

Kerwin

数据库 mongodb

当我们谈前端性能的时候,我们谈的是什么

vivo互联网技术

性能优化 大前端 页面

区块链应用落地,区块链电子票据应用平台搭建

t13823115967

区块链+ 区块链应用 区块链落地开发

即构科技肖传发:即刻构建在线教育的音视频互动场景

ZEGO即构

算法训练营课程纲要

陈皓07

2020 阿里云原生实战峰会即将开幕 云原生落地的正确姿势

阿里巴巴云原生

阿里巴巴 阿里云 开发者 云原生 实战

TronChain波场链系统软件开发|TronChain波场链APP开发

系统开发

从容应对11.11大促 京东智联云云硬盘做对了哪些事?

京东科技开发者

云计算 高可用 云硬盘

公安舆情分析重点人员管控系统搭建解决方案

t13823115967

智慧公安 舆情分析

药品安全追溯系统开发区块链技术

13828808769

安全 区块链+

排查指南 | 当 mPaaS 小程序提示“应用更新错误(1001)”时

蚂蚁集团移动开发平台 mPaaS

小程序 问题排查 mPaaS

数据结构与算法系列之散列表(一)(GO)

书旅

数据结构 算法 Go 语言

通过docker获取系统运行情况的实用命令

晓川

生产环境压测建设历程之三 淘宝网2009年的痛

数列科技杨德华

警察营救安徽望江县17岁女生跳河自尽过程中,现场看热闹的旁观者们在做什么?

wbliu85

悟空活动中台-打造 Nodejs 版本的MyBatis

vivo互联网技术

Java 大前端 mybatis nodejs

为什么建议使用你 LocalDateTime ,而不是 Date?

Bruce Duan

LocalDateTime Date

读写分离这个坑,你应该踩过吧?

楼下小黑哥

MySQL 主从同步 读写分离

话题讨论 | 作为地地道道的程序员半年内都没摸过代码是什么样的体验?

xcbeyond

话题讨论

(G20200388020528)第一周练习

走走,停停……

G20200388020528第二周作业

走走,停停……

Redis 如何实现点赞、取消点赞

Bruce Duan

Redis实现点赞

SuperWebView:系统WebView的增强替代_移动_徐川_InfoQ精选文章