【导读】关于 JSBridge,绝大多数同学最早遇到的是微信的 WeiXinJSBridge(现在被封装成 JSSDK),各种 Web 页面可以通过 Bridge 调用微信提供的一些原生功能,为用户提供相关的功能。其实,JSBridge 很早就出现在软件开发中,在一些桌面软件中很早就运用了这样的形式,多用在通知、产品详情、广告等模块中,然后这些模块中,使用的是 Web UI,而相关按钮点击后,调用的是 Native 功能。现在移动端盛行,不管是 Hybrid 应用,还是 React-Native 都离不开 JSBridge,当然也包括在国内举足轻重的微信小程序。那么,JSBridge 到底是什么?它的出现是为了什么?它究竟是怎么实现的?在这篇文章中,会在移动混合开发的范畴内,将给大家带来 JSBridge 的深入剖析。

阅读全文 »

国内近年来对 React Naitve 讨论的火爆程度不言而喻,可能你都已经用了一段时间的 React Native 了。不知你对于 React Native 内部的机制是否感到神秘呢?别急,下面就以 Android 平台的 React Native 源码为你一步步揭开 React Native 的“神秘面纱”。

阅读全文 »

本文先简单描述 OkHttp3 的工作流程,然后介绍 OkHttp3 的一些核心类(如连接池 StreamAllocation 以及各式各样的 Interceptor),接着从源码角度分析一次 HTTP 请求在 OkHttp3 中所经历的过程,在不同的 Interceptor(拦截器)可以看到一些 OkHttp3 设计的一些巧妙思想,最后对上述分析做个简单的总结。

阅读全文 »

【导读】Qunar React Native(下文简称 QRN)是去哪儿网(Qunar)基于 React Native(下文简称 RN)定制的一套框架,让 RN 用起来更方便快捷,2016 年 3 月上线后已在公司内部大规模应用。透过 QRN 的大规模实践我们可以看到如何更好地去使用 RN。

阅读全文 »

React Native ( RN )可以说是目前最火的移动跨平台开发框架,其通过 JavaScript (JS)来开发 iOS、Android 原生应用,因为使用的是 Native 的原生组件,通过 RN 开发的页面可以媲美原生 Native 页面。 Qunar React Native ( QRN ) 是 Qunar 移动架构组 ( YMFE ) 基于 RN 深度定制的跨平台移动开发框架,QRN 在框架层面上进一步抹平了 iOS 与 Android 的平台差异,让 RN 的开发变得更加高效。

阅读全文 »

过去的一年来 Qunar 对于 React Native(简称 RN )进行了大规模的应用。结合业务自身的需求,我们在 RN 基础上提供了一套更适用于 Qunar 的解决方案—— Qunar React Native(简称 QRN)。其中包括了公共包与业务包的拆分,组件和 API 的重新封装,以及各种提升开发效率的插件等。

对于移动设备上的长列表,首屏渲染速度和内存回收一直是我们关注的问题。ListView 是 RN 提供的列表组件,和 RecyclerView 与 UITableView 类似,都采用渐进式渲染。即只渲染用户可视区域内的元素,根据位置的偏移,更新可视区域中的元素。

阅读全文 »

React目前最热门的前端框架之一。其独特的设计思想,在前端领域属于革命性的创新。React对DOM的模拟最大限度减少与DOM的操作,性能出众;React组件化的开发方式,代码逻辑简单。所以越来越多人关注并使用它。15年7月经过调研我们团队决定在新项目YIcon中使用React。我们预想开发效率将 ...
阅读全文 »

经过近两年的发展,我们去哪儿内部的 hybrid 方案 hy,已经从 15 年年中的 hy 1.0 进一步完善和成熟,已于去年底推出了基于 react 的 hy2.0 解决方案。在框架升级的大背景下,他的路由架构体系也发生了不小的变化,希望能通过这篇文章,让大家了解到我们路由方案的选择变迁,与页面加载性能优化的手段。

阅读全文 »