大家好,又见面了,我是你们的朋友全栈君。
一、移动应用开发的方式
1、目前主要有三种(如上图):
- Native App : 本地应用程序(原生App)
- Web App:网页应用程序(移动web)
- Hybrid App:混合应用程序(混合App)
native app是原生安卓或ios程序员写的手机app。
hybrid app是混合app。 可以是安卓或iosf程序员写一部分,然后前端写html代码,把html代码给安卓或ios嵌套进去; 也可以是直接的html网站,将其打包,嵌套一个app壳(在壳里面,其实就是只做了一个内嵌浏览器)。
web手机端网页就是直接写html,在手机浏览器打开的网站。
2、区分app和手机端网页 手机app:是那些可以在手机的应用商店下载安装的软件,如微信、QQ等 手机端网页:是浏览器打开的网页,如www.taobao.com。(大部分写网页)。
3、公司选型:
- 大公司肯定是有ios和安卓。
- 小公司基本上就是自己写html,然后直接打包套壳而成。
二、以上三种移动应用开发方式的比较
注意: 1、原生安卓或ios开发的app基本可以操作任何手机系统,如视频、扫码、读取通讯录。 2、混合开发 2.1、一部分安卓或ios,一部分html,如果要操作手机,就需要安卓或ios配合前端一起。 2.2、现在前端也可以自己做混合开发,但是需要借助框架,如uni-app编辑器等帮助打包嵌套壳。 ** 如果公司没有安卓或ios,借助框架或uni-app,一般这些框架和uni-app也提供了视频、扫码等功能,只是对于我们来说这些很少用。 3、普通手机移动端网页对于手机操作是比较困难的,这些权限基本没有。
三、混合开发应用场景
- 这种考虑——如果企业使用Hybrid开发办法,就能集Native和Web两者之所长。一方面,Native让开发者可以充分利用现代移动设备所提供的全部不同的特性和功能。另一方面,使用Web语言编写的所有代码都可以在不同的移动平台之间共享,使得开发和日常维护过程变得集中式,更简短、更经济高效。
- 内部技能——许多企业都拥有Web开发技能。如果选择Hybrid开发方法,在核实解决方案的支持下,Web开发者只要仅仅运用HTML、CSS和JavaScript等Web技能,就能构建App,同时提供Native用户体验。
- 考虑未来——HTML5的可用性和功能都在迅速改进。许多分析师预测,它可能会成为开发前端App的默认技术。如果用HTML来编写App的大部分代码,并且只有在需要时才使用Native代码,公司就能确保他们今天的投入在明天不会变得过时,因为HTML功能变得更丰富,可以满足现代企业一系列更广泛的移动要求。
四、混合开发框架和层次结构图
- 移动终端web壳(以下简称“壳”):壳是使用操作系统的API来创建嵌入式HTML的渲染引擎。壳主要功能是定义Android应用程序与王爷之间的接口,允许网页中的JavaScript调用Android应用程序,提供基于web的应用程序的Android API ,将Web 嵌入到Android应用程序中。
- 前端交互js:包括基础功能js和业务功能js。
- 前端适配器:适配不同的终端:Pad、android、ios、wap。
五、打包app的框架
- vue语法的框架:weex vue语法 div、span等这些标签
1、需要安装weex脚手架 2、创建项目 3、在命令控制台输入weex打包命令打包成安卓或ios
- react语法的框架:react-native react语法 自己特定的标签,比如如view(类似div)、Text(类似span)
需要安装react-native教授叫 2、创建项目 3、在命令控制台输入react-native run android或者react-ntive run ios
- uni-app框架,这个框架也可以打包生成app,uni-app的语法也是类似vue vue语法 自己特定的标签,如view(类似div)、Text(类似span)
1、需要下载一个他自己的编辑器HbuilderX 2、就可以使用编辑器打包
app现在做的很少,一般大公司才做,如果要做,基本现在使用uni-app就可以。
1、为什么做app很少?小公司做了没人下载,成本也高,必要性不大。 2、写好的vue项目,build打包之后,把打包的项目直接使用编辑器HBuilderX打包成app,其实就是将写好的html使用编辑器HBuilderX嵌套了一个壳。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/192976.html原文链接:https://javaforall.cn