阿里、蚂蚁、晟腾、中科加禾精彩分享 AI 基础设施洞见,现购票可享受 9 折优惠 |AICon 了解详情
写点什么

Mozilla 希望 Web 开发可以取代原生程序

  • 2011-09-19
  • 本文字数:1222 字

    阅读完需:约 4 分钟

Mozilla 正在构建 WebAPI ,一组用于在浏览器中调用硬件设备功能的程序接口。而之前,通常只有原生应用才能调用硬件功能。此举意在开发一套跨平台解决方案,让开发人员只编写一次代码,就可以在所有移动平台上运行。

Mozilla 发布了 Boot to Gecko (B2G) 项目,希望能够创建一个类似于 Chrome OS 的 Web 操作系统,此操作系统的目标平台除了上网本之外,还包括兼容 Android 系统的手机和平板电脑。B2G 将会基于 Gecko 和 Android 技术,目的是扩展 Web 体验以替代原生应用程序。Mozilla 的策略到底是自己构建操作系统,还是开发相关技术然后让浏览器厂商来集成,目前尚不清楚。在 B2G 的 FAQ 中写到:

Boot to Gecko (B2G) 目前处于初期探索阶段,目标是为开放 Web 平台构建独立的、完整的操作系统。它不是一个产品,但一旦成功可以作为某些产品的基础……

B2G 项目不鼓励只能运行在 B2G 或 Firefox 上的应用程序,这是区别于 B2G 和其他移动平台的一个重要因素。我们并不希望由此获得 Mozilla 的竞争优势,而是希望整个 Web 平台获得优势……

理想情况下,这项技术将会被所有平台和设备上的移动浏览器所使用。我们期待着与其他操作系统和浏览器的开发人员一起,为制定标准和实现标准而努力。

B2G 的开发将集中在四个领域: WebAPI权限模型 -保证 WebAPI 被网页和应用安全的访问 -,启动 -Android 设备启动器,和应用程序 - 从其它平台移植或新的应用。

虽然有了 HTML5,但开发人员仍需要以统一的 API 访问各种硬件功能 - USB、摄像头、加速仪等-来获得一致的开发体验。针对手机的第一组 API 将在 3 到 6 个月之内完成。

WebAPI 将会包含如下部分:

  • 拨号:电话和短信 API,联系人 API
  • 地址簿:联系人 API
  • 短信:电话和短信 API,联系人 API
  • 时间
  • 摄像头:摄像头 API,文件系统 API
  • 相册:基于 FileReader(已经完成)和 FileWriter 的文件系统 API。还有基于 IndexedDB 的文件抽象层。
  • 计算器
  • 设置:设备状态 API,设置 API
  • 游戏:加速仪 API,鼠标 API
  • 地图:地理信息 API,联系人 API

当这些 API 被实现以后,开发人员就可以编写出和原生应用非常相似的 Web 应用,而且不需要为每个移动平台写不同的代码。此项目若想取得成功,需要各大移动平台厂商的支持。Mozilla 的 Robert Nyman 在官方博客中“将会发布WebAPI 规范的草稿和实现原型,并提交给W3C 来标准化。”W3C 自己也在开发其中的一些API,比如地理信息API ,因此不清楚Mozilla 会提出全新的API 还是保持已有的、只为跨平台开发所需要的API。

然后就等着苹果、谷歌和微软拥抱和支持这些API 了。据 ArsTechnica 称,苹果对 iOS 开发平台的最初想法就是基于 HTML,而谷歌以推动 Web 标准化著称,微软也在为 Windows 8 打造基于 HTML 5 的用户界面,其中还包含了在浏览器中访问 PC 机硬件的 API,因此这些公司应该会支持这个想法。最后,就看 W3C 是基于 Mozilla 的 WebAPI 还是其他大厂商的提案来构建标准了。

查看英文原文: Mozilla Favors Web Over Native Application Development

2011-09-19 21:162188
用户头像

发布了 63 篇内容, 共 23.4 次阅读, 收获喜欢 1 次。

关注

评论

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

【docker 总结】第七篇 - nodejs项目部署

Brave

Docker 12月日更

equals方法通用约定

李子捌

Java 28天写作 12月日更

大神级插件ScriptRunner案例分享

跟YY哥学Jira

Jira automation ScriptRunner

「架构实战营」模块二《如何抓住架构设计的关键点》作业

DaiChen

作业 模块二 「架构实战营」

如何配置 Nessus 漏洞扫描策略?

Ethereal

网络安全 漏洞扫描 网络技术联盟站 Nessus

【架构实战营】模块二:知识点总结

wgl

「架构实战营」

Volatile 初探和 Java 内存模型

悟空聊架构

SpringCloud 28天写作 passjava 悟空聊架构 12月日更

分析下微信朋友圈的高性能复杂度

Anlumina

#架构实战营

Dubbo框架学习笔记六

风翱

dubbo 12月日更

模块二作业——微信朋友圈高性能复杂度分析

木几丶

「架构实战营」

【LeetCode】找到小镇的法官Java题解

Albert

算法 LeetCode 12月日更

模块九作业

bob

「架构实战营」

微信朋友圈高性能复杂度

阿门阿前一颗葡萄树๑

架构实战营 #架构实战营 「架构实战营」

架构实战训练营 - 模块 3- 作业

温安适

「架构实战营」

【架构实战营】模块二:命题作业

wgl

「架构实战营」

模块2

Geek_59dec2

架构实战营

Java程序中如何正确的释放资源

李子捌

Java 28天写作 12月日更

18《重学JAVA》--JAVA异常(二)

杨鹏Geek

Java25周年 28天写作 12月日更

SRE在安全方面可以做点啥

勇往直前的胖子

腾讯云实时音视频(TRTC)SDK使用体验测评

为自己带盐

dotnet 28天写作 trtc-js-sdk 12月日更

原型模式

卢卡多多

28天写作 12月日更 原型模式

架构实战营模块二作业

Poplar

架构实战营

CSS之选择器(十一):focus-within

Augus

CSS 12月日更

大系统中的线下团队

张老蔫

28天写作

全网最牛逼的华为信息中心配置命令,建议收藏!

Ethereal

网络技术 信息中心 厂商设备命令

读《思辨与立场》-06 思维的要素 -02

wood

28天写作 批判性思维 思辨与立场

第二模块学习总结

Anlumina

#架构实战营

PoE、PoE+、PoE++ 三款交换机如何选择?一文带你了解!

Ethereal

交换机 运维技术 PoE 弱电工程

作业:架构实战营模块 2

Poplar89

「架构实战营」

设计模式:责任链模式学习笔记

Changing Lin

12月日更

架构复杂度分析

tony

「架构实战营」

Mozilla希望Web开发可以取代原生程序_架构_Abel Avram_InfoQ精选文章