Android和Qt-Extended在设计方法上的共通之处
2010-08-31 00:29:00 来源:WEB开发网目前Qt-Extended停止开发,但是Nokia准备开发新的Qt-Mobility作为其替代工具,相信Qt-Extended中很多优秀的设计理念还是会被继承下来。期待在Qt在Nokia中会有更好的表现 Android和Qt-Extended作为新型的手机开发平台,都致力于将开发者将注意力集中于软件功能的实现,而用花很大的精力在系统资源的管理上。
这是和symbian平台最大的区别,设计symbian的那个年代,内存/cpu都是稀缺资源,所以要求开发者不仅要设计软件架构,还要随时准备处理内存不够的情况。随着硬件性能的大力提升,Nokia有意于将Qt替代symbian,也算是顺势而为。 Android和Qt-Extended虽然都用了一些不同的术语去描诉这些设计方法,但在本质上是相通的,那么我们来看一看他们的对应关系。应用配置文件 AndroidManifest.xml VS appname.desktop 虽然Android里不再将一个运行的程序叫应用,叫activity,不过用应用来理解应该问题也不大。
AndroidManifest.xml是用于该应用怎么启动,以及对应的资源管理等。而Qt-extended里是用appname.desktop完成相应的功能,appname根据应用名不同而不同。应用启动的Launcher正是通过.desktop文件找到对应的二进制代码进而启动进程的。外部服务接口 IntentFilter VS Service 外部服务的接口实现如下功能,比如当前页面里看到一个音频文件的链接,在用户点击链接的时候,会调用外部服务程序去实现该功能,但是当前应用的设计者是不知道系统的哪一个应用来完成这个功能的,只能发出一个类似播放音频这样的请求,由系统决定由哪个应用来执行这个播放功能,这样设计的好处是系统的组件能够更容易被替换。Android中用Intent和IntentFilter来实现该功能。而Qt-Extended用Service来实现。应用生命周期 activity manager VS MemoryManager 在内存空间不够的情况下,系统要求做出反应关闭一些不需要的应用。
Android 利用Activity 管理器根据acitivity 的不同状态决定关闭哪些应用。而Qt-Extended则是利用启动服务进程里的MemoryManager来监视内存状态,进行应用管理的。后台应用 Service VS QCop 消息后台应用指的是根据系统需要运行一些不需要GUI的应用,比如网络下载,音乐播放什么的。Android通过启动Service完成这个功能,而Qt- Extended则可以通过QCop向系统发出启动某个引用的请求,比如拨号,下载等。广播服务 BroadcastReceiver VS RegisterQCopChannel 广播服务是指系统发生某种状态变化时希望大部分应用做出对应响应时而使用的广播动作。比如电池电量低,外部设备如usb等接入时。Android使用
- ››Android 当修改一些代码时,使用什么编译命令可以最...
- ››Android 如何添加一个apk使模拟器和真机都编译进去...
- ››Android 修改Camera拍照的默认保存路径
- ››Android 如何修改默认输入法
- ››android开发中finish()和System.exit(0)的区别
- ››Android手势识别简单封装类
- ››android中查看项目数字证书的两种方法
- ››Android中获取IMEI码的办法
- ››android 相机报错 setParameters failed
- ››Android重启运用程序的代码
- ››Android为ListView的Item设置不同的布局
- ››android bitmap与base64字符串的互相转换
更多精彩
赞助商链接