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

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,作用都是一样的,差异在于功能的强弱。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/395717.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《Java程序设计》学期总结

《Java程序设计》 学期总结 课程设计小组 -迦瓦栈队 团队博客 读书笔记汇总第一周第二周第三周第四周第五周第六周第七周第八周第九周第十周 实验报告汇总实验一实验二实验三实验四实验五 代码托管链接GitOSC 课程收获与不足 上了一学期的课,收获当然后很多&#xf…

012-- mysql的分区和分表

分区 分区就是把一个数据表的文件和索引分散存储在不同的物理文件中。 mysql支持的分区类型包括Range、List、Hash、Key,其中Range比较常用: RANGE分区:基于属于一个给定连续区间的列值,把多行分配给分区。 LIST分区:类…

中科大计算机专业少实习_为什么很少有计算机科学专业的人?

中科大计算机专业少实习Hong Kong-based technology writer Dan Wang wrote a blog post exploring why so few people get degrees in computer science. And yes — it’s far fewer people than those who study other science and engineering fields.驻香港的技术作家王丹…

java犯的小错误_[Java教程]十个JavaScript中易犯的小错误,你中了几枪?

[Java教程]十个JavaScript中易犯的小错误,你中了几枪?0 2015-06-01 12:00:19序言在今天,JavaScript已经成为了网页编辑的核心。尤其是过去的几年,互联网见证了在SPA开发、图形处理、交互等方面大量JS库的出现。如果初次打交道&…

Kali渗透测试——利用metasploit攻击靶机WinXP SP1

搭建渗透测试环境 Kali攻击机 WinXP SP1 靶机 启动metasploit 跟windows RPC相关的漏洞 内部提供的漏洞攻击 靶机winxp sp1网络配置 查看虚拟机的NAT网段 配置WinXP SP1靶机的IP地址 执行漏洞利用 后漏洞利用:meterpreter> 靶机的信息 进程情况 查看到explorer.e…

创建响应式布局的优秀网格工具集锦《系列五》

在这篇文章中,我们为您呈现了一组优秀的网格工具清单。如果网页设计和开人员采用了正确的工具集,并基于一个灵活的网格架构,以及能够把响应图像应用到到设计之中,那么创建一个具备响应式的网站并不一定是一项艰巨的任务。enjoy! 您…

【iOS - 周总结】开发中遇到的小知识点(2018.12.10-2018.12.15)

1.WKWebview加载html文本图片过大,没有自适应屏幕宽高。 在用Webview加载html文本有时候会遇到加载的图片过大,不能自适应屏幕宽高的问题。那么如何解决这个问题?如何使图片自适应屏幕?很简单,只需要加一个js就可以。 …

如何使用Create React App DevOps自动化工作中所有无聊的部分

by James Y Rauhut詹姆士鲁豪(James Y Rauhut) 如何使用Create React App DevOps自动化工作中所有无聊的部分 (How I automate all of the boring parts of my job with Create React App DevOps) When you have responsibilities as one of the only designers — and possib…

java 无侵入监控_MyPerf4J 一个高性能、无侵入的Java性能监控和统计工具

MyPerf4J一个针对高并发、低延迟应用设计的高性能且无侵入的实时Java性能监控和统计工具。 受 perf4j 和 TProfiler启发而来。MyPerf4J具有以下几个特性:无侵入: 采用JavaAgent方式,对应用程序完全无侵入,无需修改应用代码高性能: 性能消耗非…

Apple Swift编程语言新手教程

文件夹 1 简单介绍2 Swift入门3 简单值4 控制流5 函数与闭包6 对象与类7 枚举与结构1 简单介绍 今天凌晨Apple刚刚公布了Swift编程语言,本文从其公布的书籍《The Swift Programming Language》中摘录和提取而成。希望对各位的iOS&OSX开发有所帮…

javascript 减少回流

减少回流(REFLOWS) 当浏览器重新渲染文档中的元素时需要 重新计算它们的位置和几何形状,我们称之为回流。回流会阻塞用户在浏览器中的操作,因此理解提升回流时间是非常有帮助的。 回流时间图表 你应该批量地触发回流或重绘&#x…

[国家集训队] 特技飞行

题目背景 1.wqs爱好模拟飞行。 2.clj开了一家神犇航空,由于clj还要玩游戏,所以公司的事务由你来打理。 注意:题目中只是用了这样一个背景,并不与真实/模拟飞行相符 题目描述 神犇航空开展了一项载客特技飞行业务。每次飞行长N个单…

react 手指移开_代码简介:React的五个死亡手指

react 手指移开Here are three stories we published this week that are worth your time:这是我们本周发布的三个值得您关注的故事: React’s Five Fingers of Death. Master these five concepts, then master React: 10 minute read React的五指死亡。 掌握这五…

java lock接口_Java Lock接口

Java Lock接口java.util.concurrent.locks.Lock接口用作线程同步机制,类似于同步块。新的锁定机制更灵活,提供比同步块更多的选项。 锁和同步块之间的主要区别如下:序列的保证 - 同步块不提供对等待线程进行访问的序列的任何保证,…

springcloud-05-ribbon中不使用eureka

ribbon在有eureka的情况下, 可以不使用eureka, 挺简单, 直接上代码 application.xml server:port: 7002 spring:# 设置eureka中注册的名称, 全小写, 否则大小写混杂出现问题application:name: microservice-consumer-movie-ribben-ymllogging:level:root: INFOorg.hibernate: I…

SQL mysql优化

慢查询 如何通过慢查日志发现有问题的SQL? 查询次数多且每次查询占用时间长的SQL pt-query-digest分析前几个查询IO大的SQL pt-query-diges分析中的Rows examine项未命中索引的SQL pt-query-digest分析中Rows examine 和Rows Send的对比如何分析SQL查询 使用explain…

转: 关于 ssl的建立链接的过程

转自: http://www.ruanyifeng.com/blog/2014/02/ssl_tls.html SSL/TLS协议运行机制的概述 作者: 阮一峰 日期: 2014年2月 5日 互联网的通信安全,建立在SSL/TLS协议之上。 本文简要介绍SSL/TLS协议的运行机制。文章的重点是设计思…

第一章第一个c#程序上机_我从第一个#100DaysOfCode中学到的东西

第一章第一个c#程序上机On May 17th, I completed my first round of #100DaysOfCode. In case you haven’t heard, #100DaysOfCode is a challenge, or movement, started by Alexander Kallaway for people interested in coding. The basis of the challenge is that you p…

[Swift通天遁地]一、超级工具-(2)制作美观大方的环形进度条

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/)➤GitHub地址&a…

SPOJ QTREE6 lct

题目链接 岛娘出的题。还是比較easy的 #include <iostream> #include <fstream> #include <string> #include <time.h> #include <vector> #include <map> #include <queue> #include <algorithm> #include <stack> #in…