MeeGo给我的感觉就是Only make noice but no product,月圆月亏,花开花落,年过一年,我们只是听到了noice,尤其是在handhold的领域,进展之缓慢考验我们的耐心。我们安装了开发环境之后,关心的是,如何开发我们的project,对于一个开发人员,如何体现MeeGo与Andriod的最大区别,就是其完全建立在opensource的基础上。因此还是要有点耐心,将wiki中的developer的内容过一过。即使我们的目的只是想作一点点应用的开发,但是MeeGo的框架仍需要了解,否则我们不清楚需要去查哪些API。So, 我们需要对MeeGo Architechure quick view.在此之前,我们需要了解What is MeeGo?
在wiki上的一篇MeeGo Introduction
是很好的开始。我们将去掉一些美好未来的描述,看看何为MeeGo,并加上我们的意见。
MeeGo = Moblin + Maemo
2010.2.15,最大的芯片公司Intel和最大的手机工厂Nokia宣布正和他们的开源项目Moblin和Maemo,组成MeeGo,并由Linux基金会掌管。而我们也记得,大致也在这个时间,Linux将Andriod的贡献代码剔出了Linux kernel,这源自于开源项目和Google对产品理念的思维无法兼容,从这个角度看,MeeGo符合Linux的宗旨,将开源进行到底。Nokia正在饱受Apple和Andriod的威胁,很有迟暮的苍凉。Intel缺乏作系统软件和应用软件的整机产品的经验,可谓一拍即合。无论是珠联譬合还是各怀鬼胎,总之MeeGo成立。鼓舞者有之,讥笑着有之。
Maemo的末代设备是Nokia N900, Maemo 5,重新设计了手指触摸的UI。Moblin是Intel为其Atom系列芯片设计的,Mobiln的最大贡献是系统fastboot,而我们看到ubuntu9.x的快起就是得益于Intel工程师卓有成效的贡献。
Linux-based, 适用于多类硬件设备
MeeGo是Linux based。Andriod的产品分裂,有不同尺寸屏幕的,流行的有手机,正在向平板扩张。而MeeGo在设计的时候,目标就已经包含多类的计算设备,包括handsets, netbooks, tablets, connected TVs and in-vehicle infotainment systems(车载信息娱乐系统),正如Intel在Mobiln中所言,这点在文档中反反复复提及。但是我们也必须看到这些设备的UI有很多的区别,主要原因在于屏幕尺寸大小的差异,我们看MeeGo project网站中看到netbook,handset,IVI的界面是不完全不一样,只能说美工的风格一致,而UI的framework有差异,netbook中保留了Moblin的GTK/Clutter,而手机中采用了MTF。这种产品的分裂可能会给MeeGo的未来发展(如果有未来的话),尤其它说号称的能在多种硬件设备上加载,并不那么真切。而UI,由于Apple的革命性的革新,是应用/系统非常重要的一部分,消费者最直接的直观感受。我们最后看到的可能是MeeGo的平板版,手机版,上网本版(netbook觉得没有未来,无法定位这个产品,你选择手提还是netbook,你选择平板还是netbook,在这两个二选一的选择题,我都会抛弃netbook)等等。
支持ARM和X86。
真正的开源系统(特别和iOS,Andriod对比)
遵循完全开源的路线,将会有得到很多开源社区的青睐。MeeGo将贡献给upstream project,包括有GStreamer,Telepathy,oFono, Fennec,Clutter,Connman,Qt,webkit,Pluseaudio等等。你对MeeGo的贡献会上溯到上游开源社区。值得注意的是,其中不少,例如QT和webkit本生就是cross-plateform的开发工具。
这给我们提供了跨OS移植应用的可能。这也是iOS和Andriod不能提供的。
Nokia和Intel分别提供为产业生态链提供OVI和AppUP两个软件商店。软件商店利益巨大,两个大头都要自己hold着。MeeGo正在制定其遵守原则来确保兼容问题。
A glance of MeeGo架构
这是一张标准的MeeGo架构图。从下往上看。这个架构的各个模块也是有不同的开源项目组成的。这次先快速浏览一下架构,具体的参见http://meego.com/developers/meego-architecture/。
1. The Os Base Layer.包含硬件适配软件用以使得MeeGo在不同的硬件上运行,Linux Kernel以及core services.这一层,确保经过MeeGo裁减和优化的Linux内核在硬件上跑起来。如果不设计kermel module开发,可以跳过这一层。
2. MeeGo OS Middleware Layer。提供于硬件和使用模式无关的API
,用于建立native应用和web runtime应用。这一层是MeeGo选取的开源项目组层的中间件,是上层应用开发的基础,也是我们开发MeeGo兼容程序所需关注MeeGo选择了哪个开源项目了提供。对于我们自行定制的产品,这部分的API应不要改动以及裁减,以免上层应用出现不兼容的问题。但是由于这些都是开源project,我们可以根据我们自己的需求对他们进行扩展和补充。当然我们也可以选择整个替换,这样将会在MeeGo上来出自己的一条私有分支,这是不推荐的,看看中国移动的OMS,就知道这样会有什么下场。当然,这只是一个原则,对于目前尚没有任何商用产品的MeeGo,市场化远比遵守这些条条框框要优先。我们也可以选择整个更换某个模块,例如移动通信,使用自己的,扔掉oFono的。这些需要考虑开发商和用户之间的关系,例如某些特定行业的定制终端,可以采用这种方式。
3.MeeGo User Experience Layer.这里我们很遗憾地看到Netbook和Handset UX有差异。我们关心的Handset UX使用的手指驱动替代鼠标驱动,设备形态的差异,使得统一UX困难。MeeGo也给出了一个MeeGo的UI Guideline,很值得一读。也允许厂家定制自己的UX。
对于一个用户的应用,需要适应中间曾提供的MeeGo API,并通过UX层给出的界面设计和UX事件驱动来完成。由于存在不同UX,这个架构也很好地提醒我们在开发过程中,将功能和UI独立开来,容易替换不同的UX framework
,而不影响主题代码。这在MeeGo开发中尤其注意。
MeeGo的第一个UI是MeeGo1.0的netbook版本,在2010.5.25释放。我在Netbook上安装过,整个界面实际上很适合触摸屏,例如图标的尺寸。
相关链接:我的MeeGo相关文章
分享到:
相关推荐
诺基亚N950是一款专为MeeGo操作系统开发者设计的智能手机,它与N9一同代表了诺基亚在MeeGo平台上的尝试。MeeGo是一个开源的移动操作系统,由诺基亚和英特尔联合开发,旨在提供一个统一的平台,支持多种设备,包括...
- **Qt Creator IDE**:一个强大的集成开发环境,提供了一整套用于编写、调试和打包MeeGo应用的工具。 - **Qt Designer和Qt Quick Designer**:这两个工具分别用于设计传统的Qt UI和基于QML的Qt Quick UI。 - **...
Meego菜谱软件是一款荣获Intel Meego开发比赛优秀奖项的应用程序,它充分利用了Meego平台的特性和技术,为用户提供了一种新颖、直观的方式来管理和探索美食制作。这款软件的核心在于其创新的用户界面设计和高效的...
在当今的移动操作系统领域,MeeGo虽然不再是最流行的选择,但其独特的技术栈和设计理念依然吸引着开发者关注。本指南将深入探讨如何利用Python和QML这两种强大的技术来构建MeeGo平台的应用程序。 一、Python与MeeGo...
MeeGo是一款基于Linux的操作系统,由英特尔的Moblin和诺基亚的Maemo平台合并而成,旨在创建一个统一的平台,以实现不同设备间的无缝通信。MeeGo的诞生是为了在苹果的iPhone和Android崛起的背景下,为英特尔和诺基亚...
MeeGo是一个由Linux基金会管理的开源项目,旨在为智能手机、上网本、平板电脑和其他嵌入式设备提供一个灵活的操作系统。该系统结合了英特尔的Moblin项目与诺基亚的Maemo项目的优势,提供了一个强大的开发平台。 ###...
在Linux环境下,开发者需要为MeeGo SDK配置一个chroot环境。chroot是一个改变根目录的命令,它能够为特定进程创建一个隔离的根目录环境。这样的环境可以使得MeeGo应用的开发和测试工作在一个干净的环境中进行,不受...
MeeGo UI Framework & SDK为开发者提供了一个强大而灵活的开发平台,不仅支持原生和Web开发,还提供了丰富的工具集,如Qt Creator等,帮助开发者高效地创建高质量的应用程序。通过对MeeGo UI框架和SDK的理解,开发者...
以下是一份详细的MeeGo开发环境搭建教程,帮助开发者们顺利开始他们的MeeGo之旅。 ### 一、系统需求 1. **操作系统**: 通常,开发环境建议在Ubuntu或者Fedora等Linux发行版上搭建,因为MeeGo官方提供了对这些系统的...
MeeGo* 技术架构概述: 从开发者的视角看 MeeGo 技术 包括:• MeeGo* 概述 • MeeGo 技术架构 • MeeGo 1.2 新功能 • MeeGo 应用编程接口 • MeeGo 应用开发工具套件
本文将围绕如何制作一个Meego镜像进行详细介绍,帮助开发者更好地理解和掌握这一过程。 #### 一、MeeGo Image Creator (MIC) MeeGo Image Creator(简称MIC)是一款强大的工具,它能够帮助用户轻松地创建定制化的...
- **开放性提升**: N900作为一款完全开放的智能手机,为开发者和用户提供了前所未有的自由度,这标志着Maemo在发展道路上的一个重要转折点。 - **技术创新**: Maemo 5版本的推出,以及OMAP Linux等技术的应用,表明...
IDF2011-MeeGo主题日活动旨在为开发者和相关从业人员提供一个交流与学习的平台,深入了解MeeGo操作系统的特点及其在移动设备领域的应用前景。通过本次活动,参与者不仅能够获取最新的技术动态,还能接触到一系列基于...
4. **全面的工具集**:Meego提供了一系列开发工具,如Qt Creator和Web应用开发插件,帮助开发者高效地创建各类创新应用。 5. **商业潜力**:通过AppUp Center和诺基亚Ovi商店等多渠道,开发者可以将自己的应用推向...
【Meego 开发环境配置详解】 ...虽然使用虚拟机运行MeeGo可能会比实际设备慢,但它为开发者提供了一个无需物理设备的便捷开发平台。在开发过程中,可以持续更新和优化环境,以提高开发效率和性能。
MeeGo是一个由Moblin(Intel发起)和Maemo(Nokia发起)合并而成的Linux发行版,旨在为消费电子设备提供全面的支持。MeeGo的目标市场包括但不限于:上网本、手机、连接电视以及车载信息系统等。该项目由Linux基金会...
总之,MeeGo SDK为开发者提供了一个全面的开发平台,不仅包含了一系列强大的开发工具,还拥有丰富的文档资源和社区支持,大大简化了MeeGo应用程序的开发、调试和分发过程。无论是初学者还是经验丰富的开发者,都能...
Qt使得开发者可以编写一次代码,运行在多个平台上。 3. **Nemo UI框架**:针对移动设备,MeeGo引入了Nemo用户界面框架,提供了一个简洁、高效的触控体验。Nemo由Qt和QML(Qt Meta Language)构建,允许快速创建动态...
《开发MeeGo应用:Python与QML的结合》是一本深入探讨如何使用Python和QML在MeeGo操作系统上构建应用程序的专业指南。MeeGo是诺基亚和英特尔合作开发的一个开源移动设备操作系统,旨在为智能手机、平板电脑、车载...