symbian应用程序开发-1

1.1. Developing Series 60 Applications

1.1.1.    Getting Started

Series 60 SDKs 由Symbian公司发布的指定版本的Symbian OS C++ SDKs构建。一个SDK包含工具、应用程序接口、类库和文档等,以方便开发者能够开发新的应用程序。

每个Series60的产品都建立在特定发布平台之上,而开发人员经常需要在不同版本的Series 60 的SDKs上工作,或为了不同的用户接口平台,使用不同的SDKs。

1.1.1.1.          开发过程概述

大部分的开发和测试工作可以通过PC平台上的模拟器来完成,尽管在目标机上的调试有所限制。此外,为了能够为目标设备构建可执行程序,有几种二进制格式(如ARMI,ARM4,Thumb)。编译和链接的过程可以通过命令提示符工具或其他IDE工具完成。

有两个通用的项目文件:projectname.mmp和bld.inf文件。这两个文本文件将作为构建选项的起始点,指定IDE、平台变量等。

bld.inf文件指定了项目中所有组件的名称,以及每个组件对应的自己的.mmp文件。如果一个工程有多个组件构成,如除了应用程序自身外,还有其他的指定的函数库,则每个组件都有其自己的mmp文件,每个库加上应用程序都有一个mmp文件,而每个文件名称将会列举在项目的bld.Inf文件中。

从一般symbian文件生成IDE和特定平台的项目文件的流程如下图所示:

图 2-2-1-1

 

下面来看“hello world”的例子。

1.       项目中有bld.inf和helloworld.mmp。用这两个文件作为输入,通过symbian的bldmake工具,可以生成abld.bat命令文件。然后就可以用abld.bat文件在命令提示符中执行项目相关的动作。如下图所示:

执行后就会在目录中生成相应的

2.       很多时候项目是在IDE中构建和运行的,这时你就要为你选择的IDE创建相关的文件。这里我们主要来看一下VC++。我们可以用abld在命令提示符中创建Hellowrold.dsp和Helloworld.dsw文件。但从网上说3rd不支持VC6,具体原因等深入了看能不能解决,如下图所示:

后来我把默认设备改为2.0版本的,但仍然有其他问题,通过网上查询,说是路径没有安装在系统盘目录的缘故。

不过用VS2005很方便,可以直接通过mmp文件或inf文件进行导入。

3.       用指定的IDE打开项目文件,将允许你在IDE的完全支持下,进行开发、构建、运行和调试。对于习惯用命令提示符的开发人员,abld仍然能满足你编译和链接的要求。

4.       可能是我的计算机性能比较差的原因,用VC2005运行Symbian9.2自带的helloworld程序,模拟器出现过后,半天才有反应。一开始还以为哪儿又出问题了,怎么结果出不来。

 

关于VC6成功编译Helloworld的例子:

按照上面的做法,始终没有成功,心中老是有疙瘩,于是决定用2nd版本进行尝试,最后终于成功,写下流程供大家参考:

1.       准备工作。首先保证Series60_v20安装在系统盘,即C盘。我一开始安装在了D盘,不过直接拷贝到C盘去仍然能用,所以不用再重新安装了。设置环境变量:

环境变量名

环境变量值

备注

EPOCROOT

/Symbian/7.0s/Series60_v20/

该变量值不能有驱动盘符号

VC6_ROOT

D:/Program Files/Microsoft Visual Studio

我的VC6的安装路径,用在环境变量path中,可不用,path中直接写路径即可。

path

%VC6_ROOT%/Common/Tools/WinNT;%VC6_ROOT%/Common/MSDev98/Bin;%VC6_ROOT%/Common/Tools;%VC6_ROOT%/VC98/bin;C:/Symbian/7.0s/Series60_v20/Epoc32/tools;C:/Symbian/7.0s/Series60_v20/Epoc32/gcc/bin;

其中前一部分是VC6相关目录的路径,后一部分是Series60_v20相关的路径。其余跟symbian开发不相关的路径,我用省略号省略了

其次若电脑上装有多个设备的话,要确保当前设备为Series60_v20版本的。下面我们来看查看设备和设置默认设备的相关命令。查看可获得的设备,用命令devices。如下图所示:

更改默认设备的命令如下:

2.       运行cmd,改变当前目录到.inf文件和.mmp文件的目录,我这儿是目录“C:/Symbian/7.0s/Series60_v20/Examples/basics/helloworld”。

3.       输入【bldmake bldfiles】,回车产生文件“ABLD.BAT”。

4.       输入【abld build wins udeb】,则为模拟器构建工程,含有可执行二进制的调试信息。若要为VC6构建工程文件,可输入【abld makefile vc6】。则会生成vc6的.dsw文件和.dsp文件,文件的位置依赖于你电脑上SDK的位置,我这儿文件产生的位置为“C:/Symbian/7.0s/Series60_v20/Epoc32/BUILD/SYMBIAN/7.0S/SERIES60_V20/EXAMPLES/BASICS/HELLOWORLD/HELLOWORLD/WINS”

5.       找到.dsw文件,打开工程,运行输出Helloworld,如下图所示:

图 2-2-1-2

1.1.1.2.          模拟器

用模拟器进行开发、调试、测试的好处就不多说了,模拟器的外观主要依赖于目标平台、所用的Series 60 的版本和选择的IDE。虽然模拟器给我们学习symbian开发带来了很多方便,但是由于模拟器和真机之间的某些不同无法克服,像摄像头、震动、精确的时间、程序性能、内存管理等等,所以在某种意义上,开发和测试仍需要用真机。

S60的显示器,逻辑上可以划分为三个区域:状态区、主区域、控制区。状态区显示当前程序的信息、设备的一般信息,如信号强度、电量。主区域主要显示程序数据。而控制区域是指屏幕下方的两个按键标签,用于指示选择进行响应的操作。其实就跟手机一样。我们来看一下3rd_FP1的模拟器界面,如下图所示:

图 2-2-1-3

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值