Skip to content

Latest commit

 

History

History
50 lines (24 loc) · 7.26 KB

introduction.md

File metadata and controls

50 lines (24 loc) · 7.26 KB

介绍 {#introduction}

Firefox OS

Firefox OS

Firefox OS是一个由Mozilla及其合作伙伴共同开发的全新的移动操作系统。可运行Firefox OS的设备已经在许多国家上市,并且将在2013年末前拓展到更多地方。

Firefox OS的目标是新兴市场,为这数亿人群带来互联网体验是它的使命。为了达成使命,Firefox OS设备一开始就为担任 好用的第一部智能手机 而生,并辅以有竞争力的价格。Firefox OS设备不与高端智能手机竞争,如Apple iPhone 5S和Samsung Galaxy S4。它们可以为使用上述手机的用户多提供一种选择,除了功能手机外,他们还能以可承受的价格买部Firefox OS设备,享受 完整的智能手机体验

在像巴西和哥伦比亚这样的新兴市场,性能不错的智能手机的价格普遍太贵,普通消费者买不起。人们可以去买部便宜的手机,但由于这些手机的操作系统是为高端设备而开发,于是乎,在便宜手机的硬件上表现不佳,导致用户体验非常糟糕。Firefox OS经过专门设计,能够在有限的硬件下提供良好的用户体验。

另一个让Firefox OS与众不同的特点是它的开放性。考虑到当前的主流移动操作系统都是独占的,系统供应商拥有特权,他们可以不顾开发者和用户的意愿,强行推行自己的做法(还记得Apple曾禁止开发者在iTunes App Store使用除Objective-C以外的语言这件事吗?)。处于如此独占的生态系统,你只能在授权的渠道下发布应用,而且应用所得的收入,永远是这些供应商拿大头。

开发者除了受限于被独占的发布渠道,还被各个系统的软件开发工具(SDKs)限制住了。如果你想用官方开发工具来开发一个iOS原生应用和一个Android原生应用,那么你不得不分别用Objective-C和Java两种语言来写。这意味着,就编程代码而言,开发者几乎不能重用项目间的代码(也许有一些媒体资源可以重用)。想要完成这个任务,开发者得学会两门语言,开发同一个软件两次。

Firefox OS有个不同的地方是,它使用“HTML5”作为开发平台。HTML5是一个市场用语,它用来指代时刻演进着的网络标准集合,包括HTML, CSS和JavaScript。这些免专利费的标准被主流浏览器所采纳,使得开发Web应用变得可能。凭借以HTML5为中心的技术,数以百万计的Web开发者已经能够进行Firefox OS的开发了。依靠Phonegap此类封装工具,Firefox OS上的应用很容易就可以转化到其他平台。

为HTML5而生的平台

互联网无处不在,在你的电脑、手机、智能电视,甚至游戏主机。JavaScript,互联网的开发语言,是世上最受欢迎的编程语言之一。上面已经提到,我们在谈论HTML5的时候,通常指的是这三种技术的集合:HTML, CSS和JavaScript。最近的改进带来了一系列新特性 - 高级表单控件,Web sockets,还有就是,跟XHTML 1.0和HTML 4.01相比,增加了更多语义标记。近期CSS方面也引入了许多新特性,包括Flexbox和CSS动画,这使得创建美观的响应式网页变得更容易了。Javascript最新的发展包括性能的显著提高和新功能的增加,所有的改进都一如既往地易用,不管是对初学者还是经验丰富者。

Firefox OS本质其实是移动互联网的延伸。Mozilla把HTML5奉为一等公民,为数以百万计的Web开发者开放了一个平台。虽然有些浏览器厂商的移动版浏览器也支持HTML5,但是Firefox OS能做的可不止如此,它还提供了一系列能够通过Javascript访问底层硬件和系统的接口。这些接口统称为WebAPIs。

使用WebAPI访问硬件

早前的一些平台也曾尝试过创建一个操作系统,然后在这个操作系统上使用Web技术来开发应用。例如,iPhone刚面世时,唯一能开发应用的方法就是使用Web技术。但是这些Web应用有个局限性,它们不能访问硬件或设备,这意味着你能开发的应用很有限。后来当Apple允许开发者使用Objective-C语言,并且能够访问设备的功能时,它掀起了一股巨大的创新浪潮。很遗憾,Web应用当时没有获得访问设备功能的权限,于是沦为了“二等公民”,这让它们吸引不了用户和开发者,无法与原生应用竞争。

当提及设备功能,我们实际指的是访问硬件和系统级别的功能服务,比如更新电话簿、发送短信以及浏览相机和媒体的相册。在Firefox OS上,你能通过WebAPI来访问这些功能。

早些时候还有一个平台,WebOS,它也允许通过Javascript来访问硬件,但是它却从没想过将APIs标准化。Mozilla连同W3C和其他参与方,一起努力确保WebAPIs是一个开放的标准,让其他浏览器也能采纳它们。当其他浏览器支持这些APIs后,你的应用只需越来越少的修改就能跨平台运行了。

有一点很重要需要强调的是,WebAPIs不仅仅能运行在Firefox OS设备上。Mozilla正在让能运行Firefox的平台支持WebAPIs,例如电脑和Android。这样的话,你的 Web开放应用 就能在Firefox OS、电脑版Firefox和Android版Firefox上运行了。

开发和发布的权利

正如Mozilla的所有项目,Firefox OS是开源且免费的。你可以在Mozilla B2G repository关注项目的开发。你可以关注系统的发展,为项目做贡献,你还有权在你自己的渠道或The Firefox Marketplace下发布应用。更棒的是,所有的系统应用都是用HTML5写的,所以你可以查看代码看它们是如何组织的。

总而言之你不会在任何方面受限于Mozilla。假如你想获取系统的源代码,然后根据你的需求修改它,尽管去做吧。抑或你想开发一些应用仅供公司内部使用,或者只想通过自己的网站来发布作品,这一切都随你。一般来说,其他平台都有自己的官方应用市场,你只能在这个市场发布应用。Firefox OS也有个官方市场叫Marketplace,它也有一个审批流程,但是只要你愿意,你完全可以不通过这个市场发布你的应用。正如在互联网,你可以把你的网站托管到任意地方,在Firefox OS上,你也可以把你的应用放在任何地方。

这里有个小小的注意事项,遗憾的是,某些与安全相关的WebAPIs太过敏感,不允许随便使用。如果你发布的应用用到了Privileged APIs,你需要Mozilla的审查和认证签名。

总结

HTML5已被广泛接受,将来只会变得越来越好。Firefox OS是由Mozilla开发的,完全基于Web技术的全新开源移动操作系统。此系统是完全开放的,它构建了一个稳健的HTML5实施平台,提供了一系列 用Javascript访问操作系统服务 的WebAPI,这点远非其他平台能比。这些新的APIs正通过万维网联盟(W3C)被标准化,并且将来非常有希望被其他浏览器采纳。

下一章我们快速地帮你搭建好Firefox OS的开发环境。