写点什么

移动 HTML5 面对的问题

  • 2013-11-11
  • 本文字数:1397 字

    阅读完需:约 5 分钟

近期的一份研究报告,给出了与一般观点相左的结论,性能并不是 HTML5 面对的主要问题;相反,性能分析和调试工具的缺失,以及缺少某些特定 API 才是它的最大问题。

VisionMobile 对全球超过 6 千名开发者进行了调查,分析了超过 3 万款 Android Play 中发布的应用,评测了 42 款 HTML5 框架和工具,并就移动 HTML5 与原生应用之争的话题,访谈了 32 位顶级专家。最终,VisionMobile 对此进行总结,发表了研究报告《 HTML5 如何与原生应用竞争?》。以下是该研究中的一些最重要的发现。该报告划分出四类适合 HTML5 应用的主要市场路径:

  1. 移动浏览器——针对移动设备开发,适合运行在移动浏览器环境中的 Web 应用或网页。
  2. 原生应用包装——将 Web 应用封装到原生应用中,并通过应用商店发布。
  3. Web 到原生转换——使用 JavaScript 编写应用,并编译为原生应用。
  4. 原生的 JavaScript API——针对原生支持 HTML5 的平台编写应用,例如 Firefox OS、Windows 8 和 chrome OS 这样的平台。

该报告中的重要发现包括:

  • 61% 的开发者针对移动浏览器进行开发。
  • 在美国区 Android Play 的应用中,63% 的应用无法使用 HTML5 针对移动浏览器开发,因为浏览器还没有实现这些应用需要的某些 API 。
  • 在美国,37% 的 Android 应用可以使用 HTML5 实现,而如果浏览器能够增加电源管理和 WiFi 相关 API,那么这一数字将能够上升到 58%。
  • 39% 的开发者通过移动浏览器之外的其他三种市场路径创建 HTML5 应用。
  • 在美国,49% 的 Android 应用可以使用原生应用封装的方式;63% 可以使用 Web 到原生转换器的方式;而 98% 可以使用 JavaScript 的方式。

下图展示了 HTML5 吸引人的地方:

而下图展现了开发者对 HTML5 的抱怨:

许多开发者认为性能是 HTML5 的主要问题,但是在采访过这一领域的许多专家后,报告的作者认为性能是个“伪目标”,因为性能会随着硬件的更新换代、JavaScript 编译器的升级、Asm.js 等可选项的涌现等原因,而自动得到改善。在这些专家看来,首要问题与政治有关,更确切的说,由于主流浏览器供应商同时也是移动 OS 供应商,因此他们热衷于通过各自的应用商店来分发应用。Google 鼓励原生的 Chrome 应用,Apple 似乎打算实现最新的 HTML5 标准,但“却遗漏了性能相关的 API,例如 WebGL。”同样地,根据这份报告,HTML5 的神话之一,是开发很简单;但实际上开发很难——因为缺少充足的调试和性能分析工具。

在美国区的 Google Play 中,应用程序最常使用的 API 是:

目前的 HTML5 API 标准的状态,以及浏览器的支持情况,如下图所示:

如果某些特定 API 能够得以实现,那么对不同的市场路径造成的影响如下表所示。表中展现了如果拥有这些 API,使用 HTML5 开发的应用数量将会上升的比例:

市场路径

API

百分比

移动浏览器

电源管理

13%

原生应用包装

电源管理

12%

Web 到原生转换

WiFi

21%

原生 JavaScript API

日历

1.4%

针对 HTML5 领域,这份报告总结出的若干观察和推荐如下:

  • 浏览器应该实现更多的 HTML5 API,首先从电源管理和 WiFi 开始。开发者应该推动浏览器厂家实现更多的 API。
  • 原生 JavaScript 应用需要标准化打包解决方案,以便实现一次打包就能在任何支持的平台上部署的目标。
  • 应该开发设备身份识别 API,以减少与 cookie 和隐私相关的恐惧。
  • 开发者需要能够更好地获得 HTML5 相关知识,包括 HTML5 能够提供哪些能力、真正的优势和缺点。
  • 应该开发调试 API,以便创建一系列调试工具。

查看英文原文: What’s the Problem with Mobile HTML5?

2013-11-11 07:192340
用户头像

发布了 256 篇内容, 共 86.6 次阅读, 收获喜欢 10 次。

关注

评论

发布
暂无评论
发现更多内容

Python代码阅读(第48篇):返回最大元素的索引

Felix

Python 编程 Code Programing 阅读代码

Linux内核漏洞精准检测如何做?SCA工具不能只在软件层面

华为云开发者联盟

Linux 二进制 漏洞 SCA工具

2021年1-9月墨天轮最受欢迎的20篇技术文章

墨天轮

MySQL 数据库 oracle

阿里教学篇:一切从代码出发,Spring Boot从入门到源码到项目

Java Spring Cloud Spring Boot

应用开发专家一席谈:开发低代码,上手低门槛,AppCube使能Citizen Developer,人人都是开发者

华为云开发者联盟

开发者 软件开发 低代码 AppCube 应用开发

客户服务CRM系统,提供优质客户服务

低代码小观

软件 CRM 管理工具 客户服务

[ CloudWeGo 微服务实践 - 02 ] 上手

baiyutang

golang 微服务 10月月更

鸿蒙轻内核M核的故障管家:Fault异常处理

华为云开发者联盟

鸿蒙 异常 故障 Fault异常处理 Fault

等保办是啥单位?属于哪个系统?有什么作用?

行云管家

网络安全 信息安全 数据安全 等级保护 等保测评

WebRTC(66 - 96)Release Notes

webrtc developer

WebRTC

文本逆序翻转工具

入门小站

工具

ES入门教程

阿强

elasticsearch elastic ES

Vue进阶(幺伍肆):vue-resource 应用

No Silver Bullet

Vue vue-resource 10月月更

一周信创舆情观察(10.18~10.24)

统小信uos

20张图!常见分布式理论与解决方案

Java 架构 面试 分布式 后端

优雅代码技巧

十二万伏特皮卡丘

ffmpeg 推拉流示例

webrtc developer

保障公有云资源安全运维小技巧-使用内网!

行云管家

公有云 内网穿透 内网 云资源 IT运维

倒计时1天|StarRocks Summit 2021,为您揭开数据分析的秘密!

带你了解3类预训练语音模型预测方法

华为云开发者联盟

语音 预训练 语音模型 前文 后文

精益求精,零代码训练营第五期顺利结业

明道云

云短信服务孰优孰劣?博睿数据9月云短信评测报告

博睿数据

你未必知道的 WebRTC – 前世、今生、未来

FinClip

WebRTC

netty系列之:netty实现http2中的流控制

程序那些事

Java Netty HTTP 程序那些事 http2

030云原生之交付部署

穿过生命散发芬芳

云原生 10月月更

linux之zgrep查找压缩包文件文本

入门小站

Linux

OpenSearch 文档如何进行编译

HoneyMoose

银行网点业绩增长缓慢,中科柏诚本地生活高效解决

联营汇聚

演讲VIDEO大放送|如何打造实景三维高效业务支撑架构

焱融科技

云计算 分布式 GIS 高性能 文件存储

科技赋能乡村振兴,农林牧渔如何“拥抱”区块链技术?

CECBC

通过题目来讲一讲计算机系统概述相关知识 3 | 计算机组成与系统结构专题

Regan Yue

计算机组成原理 10月月更

移动HTML5面对的问题_移动_Abel Avram_InfoQ精选文章