Apache Cordova-Android框架原理研究笔记 II
来源:互联网 发布:maven 设置java home 编辑:程序博客网 时间:2024/05/16 05:00
上一篇笔者简要分析了Cordova从JS端->Native端的调用过程(以JS Object桥为例)。本章让我们来分析下这个过程的反面,也就是从Native端->JS端,Cordova是如何处理的。
老习惯,我们先看一段代码:
exec.js
nativeToJsModes = { // Polls for messages using the JS->Native bridge. POLLING: 0, // For LOAD_URL to be viable, it would need to have a work-around for // the bug where the soft-keyboard gets dismissed when a message is sent. LOAD_URL: 1, // For the ONLINE_EVENT to be viable, it would need to intercept all event // listeners (both through addEventListener and window.ononline) as well // as set the navigator property itself. ONLINE_EVENT: 2 }
可以看到Cordova实现了3中模式:POLLING、LOAD_URL和ONLINE_EVENT。笔者这里重点分析了第一种,也就是POLLING模式,后两种有机会再做深入研究。下图大致描述了这个过程。
总体来说,过程如下:
1、JS端调用Native API后,如果当前调用消息未处理完成,每隔50ms取一次消息队列,直到本次调用的消息结束;
2、Native端的插件同样维护了一个消息队列;
3、JS端通过Native端暴露的retrieveMessages接口来实现消息的拉取;
另外,通过源代码我们可以大致分析下Cordova的JS和Native两端的消息格式大致协议:
1、* 号的消息表示当前Native端仍然有待处理消息,JS端会再拉取一次消息;
2、消息内容的第一个字符如果为S表示调用成功,F表示调用失败;
其他的有兴趣的可以对照代码再做分析。
0 0
- Apache Cordova-Android框架原理研究笔记 II
- Apache Cordova-Android框架原理研究笔记 II
- Apache Cordova-Android框架原理研究笔记
- Apache Cordova-Android框架原理研究笔记 I
- Apache Cordova-Android框架原理研究笔记 I
- Cordova android框架详解
- Cordova android框架详解
- Cordova android框架详解
- Cordova android框架详解
- Cordova android框架详解
- Cordova android框架详解
- Cordova android框架详解
- android Cordova笔记
- Apache Mina2 框架研究
- 移动端跨平台开发框架 Cordova 学习笔记(一) 环境搭建及创建第一个 Cordova Android APP
- Android studio引入Cordova笔记
- Apache Cordova
- apache cordova
- Android中自定义ListView,解决scrollview嵌套listview 滑动事件冲突
- XAudio2学习之调节音量
- 每个设计师需知的40个设计素材站
- action中调用Spring 注解 service 总是为空
- 工厂模式原理及其简单应用
- Apache Cordova-Android框架原理研究笔记 II
- 设计模式系列(七)——命令模式
- 接口interface
- 机器学习算法的Python实现 (1):logistics回归 与 线性判别分析(LDA)
- Canny算子中的非极大值抑制(Non-Maximum Suppression)分析
- 动态规划算法解最长公共子序列LCS问题
- Fragment+FragmentTabHost实现仿新浪微博底部菜单栏
- leetcode--求区间内的元素个数
- AdminLTE 入门教程