一直对 Hybrid App 有比较浓厚的兴趣。包括几年前玩的 Phonegap/Cordova 和最近玩的 react-native,Webview 模式下的 Hybrid 在 Android 设备上显然有一些性能上的缺陷。 RN 看似不错,很多大厂也陆续把 APP 的部分模块或整个 APP 通过 RN 重写,但前途如何,不得而知,毕竟 “前会玩”。

V2 上很多关于 [ Hybrid App 能否取代原生APP ] 的主题下讨论的热火朝天,不亚于 [ PHP 是否是世界上最好的语言 ] 的讨论。为什么是取代而不是共存呢?

  • 米家 APP 里的小米商城

  • 手机QQ 里的 QQ 空间

  • 微信里的微信小程序

显然有些 APP 整体需要原生的稳定性和高性能,而里面的一些业务模块需要快捷开发、可维护、高可控性,如何解决这样的冲突,明显需要一个可行的 Hybrid 解决方案。甚至 APP 里某些模块 Hybrid 化后,团队有其他看法,将整个 APP Hybrid 重构,比如米家 iOS 本次更新已经整体用 RN 重写了。

微信小程序

你可以在这里 Checkout 源码:BelinChung/wxapp-hiapp

公司最近有打算做项目的微信整合方案,刚好小程序内测,花了几天写了这个小 Demo ,当做是可行性调研。总得来说,写过 RN 和 VueJS 的同学会很快的入手,很有 Virtual DOM 和 VueJS API 的味道,但是目前看起来各方面都还在完善当中,有很多坑陆陆续续微信开发团队在填补中。因为没能真机调试的原因,其实现在在开发者工具中展现不能100%在真机中跑起来,只能静观其变了。

从现在来看微信小程序并不是 HTML5 应用,而是与 react-native 类似通过 JavaScript 作为描述语言堆砌内置的原生组件,按道理产出的应用应该是真正意义上的原生应用。可是目前看来,前期的版本可能还是跑在 Webview 中,希望后期迭代或者完全发布之后,能是上述所说的吧。

Preview

Preview

其他

如果你希望获取到 HiApp 的 react-native 版本,Checkout: BelinChung/react-native-hiapp

如果你希望获取到 HiApp 的 Phonegap/Cordova 版本,Checkout: BelinChung/HiApp

最后,希望 HiApp 对喜欢 Hybrid App 的同学有所帮助。