40. 混合开发桥接 API 是怎么调用的, 需要引入类库嘛?
调用的对象是什么?
Hybrid 框架结构
HyBrid App = H5 App + Native 框架
H5App 用来实现功能逻辑和页面渲染
Native 框架提供 webView 和设备接口供 H5 调用
方案一重混合应用, 在开发原生应用的基础上, 嵌入 WebView 但是整体的架构使用原生应用提供,- - 般这样的开发由 Native 开发人员和 Web 前端开发人员组成. Native 开发人员会写好基本的架构以及 API 让 Web 开发人员开发界面以及大部分的渲染. 保证到交互设计, 以及开发都有一个比较折中的效果出来, 优化得好也会有很棒的效果. Hybrid App 技术发展的早期, Web 的运行性能成为主要 瓶颈! 为解决性能问题 Hybrid App 走向 "重混".
通过多 WebView: 实现流畅的多页加载和专场动画.
使用 Navtive UI 组件: 框架, 菜单, 日期等.
"重混" 的优缺点
优点:
提升了运行性能
增强了交互体验
缺点:
Web 和 Native 技术交叉混杂
需要同时掌握 Web 和 Native 技术, 学习难度增加
一个页面有 Web 组件也有 Native 组件, 编程 调试困难需要引入各自需要的各种依赖工具
方案二: 轻混合应用, 使用 PhoneGap,AppCan 之 类的中间件, 以 WebView 作为用户界面层, 以 JavaScript 作为 基本逻辑, 以及和中间件通讯, 再由中间件访问底层 API 的方式, 进行应用开发. 这种架构一般会非常依赖 WebView 层的性能.
随着时代的发展, 手机硬件, 浏览器技术, 无线网络技术都得到了大幅的提升, H5 已经可以支持复杂应用, 并拥有良好的运行性能. 使用轻混方案的 App 也越来越多.
目前我们要学习的 Hybrid App 开发就是方案二, 使用 H5+JS+Native 框架开 发当前轻混合应用.
Phonegap 引入 phonegap.JS 或者 cordova.JS, 对象为 navigator
Dcloud 引入引入 mui.JS 或者其他的 JS 组件, 对象为 plus
apiloud 引入各种第三方插件, 对象为 API
顺变提一下, 2012 年 8 月, 微信公众平台的. 上线, 重新定义了移动应用: 移动应用
= iPhone App + Android App + 微信 App
来源: http://www.jianshu.com/p/851f578121ff