1、手机 App 的技术栈

手机 App 的技术栈可以分成三类

原生 App 技术栈

原生技术栈指的是,只能用于特定手机平台的开发技术。比如,安卓平台的 Java 技术栈,iOS 平台的 Object-C 技术栈或 Swift 技术栈。

混合 App 技术栈

混合技术栈指的是开发混合 App 的技术,也就是把 Web 网页放到特定的容器中,然后再打包成各个平台的原生 App。所以,混合技术栈其实是 Web 技术栈 + 容器技术栈,典型代表是 PhoneGap、Cordova、Ionic 等框架。

跨平台 App 技术栈

跨平台技术栈指的是使用一种技术,同时支持多个手机平台。它与混合技术栈的区别是,不使用 Web 技术,即它的页面不是 HTML5 页面,而是使用自己的语法写的 UI 层,然后编译成各平台的原生 App。

这个技术栈就是纯粹的容器技术栈,React Native、Xamarin、Flutter 都属于这一类。学习时,除了学习容器的 API Bridge,还要学习容器提供的 UI 层,即怎么写页面

总结:H5 开发主要用在混合技术栈。但是,跨平台技术栈的某些容器也会用到(比如 React Native),因为它们的 UI 层借鉴了 Web 模型。

另外,混合技术栈和跨平台技术栈的基础,都是原生技术栈,因为最终都要编译成原生App。所以,不管使用哪一种技术栈,多多少少要了解一些各平台的原生技术。

2、WebView 控件

不管什么技术,最终在 App 里面显示网页,一定需要一个网页引擎,这样才能解析网页。通常情况下,App 内部会使用 WebView 控件作为网页引擎。这是系统自带的控件,专门用来显示网页。应用程序的界面,只要放上 WebView,就好像内嵌了浏览器窗口,可以显示网页。不同的 App 技术栈要显示网页,区别仅仅在于怎么处理 WebView 这个原生控件。

原生技术栈:需要开发者自己把 WebView 控件放到页面上。

混合技术栈:页面本身就是网页,默认在 WebView 中显示。

跨平台技术栈:提供一个 WebView 的语法,编译的时候将其换成原生的 WebView。

不同系统的 WebView 控件名称不一样,安卓系统就叫 WebView,iOS 系统有较老的 UIWebView,也有较新的 WKWebView,作用都是一样的,差异在于功能的强弱。

手机h5 java平台_H5 手机 App 开发入门:技术篇相关推荐

  1. (转载)H5 手机 App 开发入门:概念篇

    H5 手机 App 开发入门:概念篇 一.H5 的含义 二.原生应用 2.1 概念 2.2 优点 2.3 缺点 三.Web 应用 3.1 概念 3.2 优点和缺点 3.3 Web APP 的劣势 3. ...

  2. (转载)H5 手机 App 开发入门:技术篇

    H5 手机 App 开发入门:技术篇 一.手机 APP 的技术栈 二.WebView 控件 三.原生技术栈 3.1 Xcode 3.3 Android Studio 四.混合技术栈 4.1 框架种类 ...

  3. H5 手机 App 开发入门:概念篇

    手机现在是互联网的最大入口.根据<中国互联网报告>,手机网民已经超过8亿,人均每天上网三个多小时. 毫不奇怪,手机应用软件(mobile application,简称 mobile App ...

  4. HTML5plus 移动 App开发入门

    咳咳,图片复制不到文章里面来,大家去我的资源里下载吧,PDF版的. HTML5plus 移动 App开发入门 更新时间:2014年 4月 17日 HTML5 Plus 应用概述 HTML5 Plus ...

  5. android开发入门与实践_我的新书《Android App开发入门与实战》已经出版

    前言 工作之余喜欢在CSDN平台上写一些技术文章,算下时间也有两三年了.写文章的目的一方面是自己对技术的总结,另一方面也是将平时遇到的问题和解决方案与大家分享,还有就是在这个平台上能和大家共同交流. ...

  6. HTML5 Plus 移动 App开发入门

    HTML5 Plus 移动 App开发入门 HTML5+扩展了 JavaScript 对象 plus,使得 js 可以调用各种浏览器无法实现或实现不佳的系统能力,设备能力如摄像头.陀螺仪.文件系统等, ...

  7. 傻瓜式Android APP开发入门教程

    这篇文章主要介绍了Android APP开发入门教程,从SDK下载.开发环境搭建.代码编写.APP打包等步骤一一讲解,非常简明的一个Android APP开发入门教程,android各种机子和rom的 ...

  8. 初学者福音——10个最佳APP开发入门在线学习网站

    根据Payscale的调查显示,现在的APP开发人员的年薪达到:$66,851.这也是为什么那么多初学的开发都想跻身到APP开发这行业的主要原因之一.每当你打开App Store时候,看着琳琅满目的A ...

  9. Android APP开发入门

    Android APP开发入门 目录 android_studio很好用的一个就是debug 1 1导入demo编译出错 1 4使用as运行安装不了apk安装adb 2 5SeekBar组件使用 2 ...

最新文章

  1. 在ASP.NET下实现数字和字符相混合的验证码
  2. Cannot send session cache limiter - headers already sent错误解决方法
  3. Dockerfile使用方法详解
  4. python正则表达式快速入门_Python学习笔记——正则表达式入门
  5. 何为计算机视觉?计算机视觉与数字图像处理的区别、Opencv的起源。
  6. Android progressBar 自定义
  7. RDMA 、InfiniBand、IB卡、IB驱动 之间的关系!
  8. 使用 sed 替换字符串中最后一次出现的字符
  9. 禾多科技与RTI达成合作,加速自动驾驶在中国量产落地
  10. Kubernetes 学习总结(24)—— Kubernetes 滚动更新、蓝绿发布、金丝雀发布等发布策略详解
  11. 网页中使用阿里图标iconfont
  12. lodash中curry的实现
  13. OSS回源的几种方式和应用场景
  14. 解决Shiro 加权限注解失效 或者报错 This subject is anonymous
  15. ip地址:string和int互转方案
  16. 预训练(pre-training/trained)与微调(fine tuning)
  17. 计算机科学和物理哪个难,据说这是期末考试难度最大的15个专业,你上榜了吗?...
  18. 关于python爬取网页
  19. weblogic打补丁详细步骤(linux)
  20. 【C语言典例】——day3:设计魔方阵(数组)

热门文章

  1. 什么是Hyperledger?Linux如何围绕英特尔的区块链项目构建开放平台?
  2. 一、OpenStack架构
  3. 在 Delphi 中调用 JavaScript(二)
  4. 78%的iPhone用户手机没有安装过新软件
  5. mysql常用的存储引擎_Mysql存储引擎
  6. spark的流失计算模型_使用spark对sparkify的流失预测
  7. Tensorflow框架:InceptionV3网络概念及实现
  8. 1117. H2O 生成
  9. leetcode 1818. 绝对差值和
  10. 重学TCP协议(6) 四次挥手