作为一个后端的开发人员,现在的APP开发其实很多情况下不会去使用原生了,因为原生界面难看,开发周期长,开发成本也随之而言比较高。
APP代替品-公众号/小程序
现在好多公司为了省成本,还有为了好推广,毕竟单独推广一个APP的成本较高,公众号开发也比较方便,在跨平台兼容性方面由微信进行处理即可,优点适合快速开发和推广的一些业务,缺点就是依赖微信,没有自己用户群体,一些政策变化和支付的限制。
web APP
基于h5开发的APP,其实原理比较简单,就是内置了webview浏览器,就是有点类似大家现在PC端web开发,而这个就是手机APP内置了浏览器来运行,现在有很多这种框架,就举例子说明一下。
1.ReactNative
React Native 如果从成熟度来看,react native 是不二选择。但是,需要维护两套代码,即 iOS,Android 各一套。并且开发调试 iOS 只能使用 Mac 设备。 优势 文档全 社区成熟 组件丰富 劣势 需要维护两套代码 团队没有 React 经验 对开发设备有要求,调试不方便
2.Weex
Weex 而 weex 可以做到 iOS, android, H5 共用一套代码,但是,这个是国内阿里维护的项目,靠谱度存疑,遇到问题估计很难查到资料。而且大家需要使用蓝牙访问硬件设备,而 weex 并没有现成的组件实现,需要大家自己用 native 来实现。 优势 三端共用一套代码 调试简单 团队都有 Vuejs 实战经验 劣势 国内开源项目不太靠谱 社区极度不成熟 文档不全 组件有限,且下载量都在两三百的量,质量无法保证 需要 native 代码扩展蓝牙数据读取
3.Cordova 、ionic
ionic 这个虽然比较成熟,所有UI组件都是有html模拟,可以统一使用,但是唯一的问题是大家普遍反映体验不够流畅。 优势 文档全 社区成熟 组件丰富 劣势 angularjs 不太靠谱 流畅度值得商榷
现在纯原生安卓开发已经很少了,上面框架入门槛低,开发速度快,这个未来的一个趋势吧。