快速业务通道

手机网络应用客户端软件开发实践简介 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-19
特有的BUG。如何让我们的程序支持这几十款手机?

一般在开发的时候我们先基于SUN公司的标准WTK或者是某款非常典型而且移植性比较好的手机(一般是Nokia)来开发一个基础版本,然后在此基础上按照目标终端的大类做移植,再在大类的基础上做更细的移植,移植的过程如一颗树状展开,最后达到支持所有目标手机终端的目的。以下是一些开发和移植过程中的心得。

MVC设计模式 模型-视图-控制器(Model-View-Controller,MVC)设计模式及其派生无疑是UI模型的最佳实践,手机应用软件上更是如此。不同手机的屏幕大小差异非常大,在手机客户端应用程序移植的过程中最大的困难就来自于UI界面的移植,MVC设计模式可以很好地使UI界面和程序的数据、控制相分离,从而把后期应用程序的移植这个难题基本控制在界面移植这个范围之内。 MVC设计模式这里就不介绍了,要注意的是整个应用程序大小的限制可能会约束设计模式的实现,即使是最小的类也会使整个应用程序的尺寸增大200字节。实际中可能需要减少类的层次来保持JAR文件在一个合理的大小范围之内,也尽量不要使用单独的类或者匿名类来做控制器,我们的实践中使用一个控制器类来处理所有的业务逻辑,虽然这个类看起来有点臃肿,但是在这种限制条件下,有时候不得不做这种让步。

建立设备库资料库

所谓磨刀不误砍材功,对于开发跨平台的应用来说,建立一个目标手机设备资料库非常重要,其中至少要包含我们的应用软件所要用到的各种终端能力特性。网上能查到各种手机终端所支持的Java API等资料,这很方便但是除了屏幕大小外有时候有些参数不可*,而手机设备的一个错误的参数或者BUG会耽误我们开发调试过程中大量的时间。根据我们的客户端应用程序所要用到的终端能力,可以做一个测试程序,用来测试各款手机终端对于这些能力的支持情况,例如:KJava平台的RMS存储限制、最大内存限制、程序所能使用的屏幕大小、支持本地播放的多媒体内容类型、支持网络在线播放的多媒体类型、对联网能力的支持、程序运行时系统对电话呼入的处理以及对Push Registry程序自启动的支持情况和表现等等。我们可以通过自己的测试工具来建立目标终端上的这些属性的资料库,并不断扩充。注意,以真机上运行的结果为准,很多时候模拟器的表现和真机的表现是不一致的,基本上模拟器普遍都存在“缺陷”。

规范使用资源文件

为了方便移植,可以将所有的UI界面的图片、提示文字等元素都抽取为资源文件,采用资源文件可以使得资源和代码相分离。在设计阶段注意制定UI元素资源的命名规范,这样移植的时候就可以方便地替换。这种“Skin”的方式,也便于后期方便地更换程序的界面风格。对UI元素资源的规范也有利于UI开发人员的素材积累。

手机网络应用客户端软件开发实践简介(2)

时间:2011-02-08 j2medev 倪小辉

关注投入产出比

客户端软件开发面对众多不同的手机平台不是一个理想的平台,因此也很难有一个理想的结果,我们所能做的是在可以接受的范围内寻找一个最佳的投入产出比。按照我们前面提到的移植思路,第一次移植按照程序可以使用的屏幕大小分类,选择五个大类手机进行针对性的开发和移植就可以了,如果一款手机离这五个大类差距都比较大而又不是非常流行的话,不如放弃算了。

代码移植

通常我们需要使用一些针对于手机终端特性的程序代码来创建优化的应用程序。例如在只支持Nokia-UI API的手机上播放midi格式声音的方式和支持MMAPI的手机上播放midi格式声音的方式是不同的,后者上可以运行的代码到前者就无法运行。又如某一款手机上通过接口获取的字体高度和实际显示的字体高度是不一致的,同样的代码在不同的手机上就会出现美丑不一的UI界面,这意味着我们不得不在程序中针对终端

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号