Symbian与Android应用框架对比分析

需积分: 9 1 下载量 87 浏览量 更新于2024-09-09 收藏 179KB PDF 举报
"对比分析了Android和Symbian操作系统中的应用程序框架,主要关注消息传递、绘图机制以及窗口和控件的管理。同时讨论了Symbian中的消息接收与分发,以及输入法处理。提供了进一步学习Symbian应用程序框架的相关参考资料链接。" Android应用程序框架是一个基于组件和服务的架构,它允许开发者创建可重用的代码模块,如活动(Activities)、服务(Services)、广播接收器(Broadcast Receivers)和内容提供者(Content Providers)。这些组件可以通过Intent对象相互交互,Intent是一种用于启动其他组件或传递数据的意图声明。此外,Android框架还包含应用程序生命周期管理,确保应用程序在适当的时间进行启动、暂停、恢复和停止。 Symbian的应用程序框架则更侧重于底层的系统交互,比如窗口和控件的管理。在Symbian中,RWindow对象代表一个窗口,其主要属性包括矩形区域(rect)和Z顺序(z-order),窗口通过windowgroup组织成树状结构。CCoeControl是RWindow的封装,提供了控件的基本功能。绘图操作通常通过GC(Graphics Context)完成,它封装了图形绘制方法,并将结果写入设备的帧缓冲区。系统级别的绘图管理器SystemGc由CCoeEnv提供,供所有控件共享,用于高效的绘图操作。 消息传递在Symbian中是通过窗口服务器(Window Server,简称Wserv)和Cone对象来实现的。Cone作为应用程序和Wserv之间的桥梁,负责消息的循环和分发。消息首先被发送到Cone,然后由Cone分发给CCoeAppUi,UI类根据控制堆栈(control stack)进行消息的进一步处理。特别地,Symbian处理输入法时,会优先考虑FEP(Fast Input Processing)输入法,确保输入法可以优先接收到消息。 Symbian的消息接收与分发机制保证了系统对事件的高效响应,而输入法的特殊处理则优化了用户输入体验。想要深入理解Symbian应用程序框架,可以参考提供的链接,它们分别涵盖了Wserv如何处理绘图指令以及更多关于Symbian应用程序框架的信息。 Android和Symbian在应用程序框架上存在显著差异,Android强调组件化和灵活性,而Symbian更注重系统底层的控制和效率。这两种框架的选择通常取决于目标平台、性能需求和开发者的熟悉程度。