微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > Symbian 入门

Symbian 入门

时间:09-12 来源:互联网 点击:

bldmake bldfiles和abld build wins udeb,然后打开模拟器,检测程序

有无错误。

2.3.2.编译工程

在程序无错误后,在命令行输入abld build armi urel 。执行这个命令之后会在目录d:\symbian\6.1\series60\epoc32\release\armi\urel生

成HELLOWORLD.APP和HELLOWORLD.RSC两个文件。

2.3.3.建立.pkg文件

在d:\Symbian\6.1\Series60\Series60Ex\helloworld\sis 用记事本建立或者修改工程的pkg文件,内容如下:

; HelloWorld.pkg

;

;Language - standard language definitions

EN

; standard SIS file header

#{HelloWorld},(0x10005B91),1,0,0

;Supports Series 60 v 1.2

(0x101F8202), 0, 0, 0, {Series60ProductID}

;

d:\symbian\6.1\series60\epoc32\release\armi\urel\HelloWorld.APP-!:\system\apps\HelloWorld\HelloWorld.app

d:\symbian\6.1\series60\epoc32\release\armi\urel\HELLOWORLD.rSC-!:\system\apps\HelloWorld\HELLOWORLD.rSC

其中,前面d:\symbian\6.1\series60\epoc32\release\armi\urel\HELLOWORLD.rSC是要打包安装的文

件,!:\system\apps\HelloWorld\HELLOWORLD.rSC是安装的目标位置。在其中要注意的是,我们在目标位置中用“!”代替了实际的盘符。

这样做得好处是在用户安装的时候,手机系统会提示用户选择要安装的位置,这就给了用户更大的灵活度。另外,在Symbian 系统中,安装的

应用程序默认位置是“!:\system\apps ”。

编辑好pkg文件后,保存至相应目录。

2.3.4.打包程序

在命令行中,转至pkg文件所在目录,运行命令makesis HelloWorld.pkg。之后我们就在同一目录下得到了打包好的.sis文件。

2.4 手机测试

将打包好地.sis文件上传至手机中,然后在手机的应用程序管理器中就可以看到我们打包好的文件。选择“安装”命令,系统会提示用户要安

装的位置,选择安装位置后,我们制作的应用程序就安装到手机中了。

我们回到手机的主菜单,就会发现新安装的HelloWorld 应用程序。打开运行,结果和在模拟器中看到的基本是一样的。

---------------------------------------------------------------------------------------------------------------------

第一篇:Symbian UI 程序框架

Symbian UI 程序的框架基本上是统一的。大家只要学习一种简单的框架就可以进行大部分的Symbian开发了。我这里先介绍一个概念。

1.1 MVC 架构

Symbian 基本上使用MVC架构来搭建控件。Symbian UI程序设计主要讲究的也是如何使用控件。而No kia没有做好的一个方面就是有关UI

Control的帮助太少了。SDK提供的帮助里面根本就没有资源文件的写法。这一张里面我会介绍一些控件例如Dialog,Text Listbox等等资源文

件的写法。同时也会告诉大家应该到SDK的哪里才能找到这些资源的描述。

但是首先,我先介绍一下MVC架构。MVC并不是个新东西。他是Model - View - Control的缩写。在以前smalltalk中就已经开始用了。其主要的

想法是在构造类的时候把显示,控制以及模型分开。Symbian对其作了小的改动。在Nokia提供的Series 90控件组(就是CKON,以后我再提CKON

的时候大家要知道指得是S90的控件)中Model主要用来存储数据,以及封装对数据的操作。也就是对于对象实体的操作。View当然是负责显示

。Control被抽象成一个或多个纯虚类(Mixin)其它对象通过重写虚函数来得到对象内部的状态以及控制对象。Series 90的Text Listbox类

CEikTextListBox很好的说明了这个构架。比如你可以调用CEikTestListBox中的Model()函数得到一个Model的指针,然后你就可以访问其中的

CDesArrayFlat数组了。

1.2 Symbian的工程文件

1.2.1工程引导文件bld.inf

这个东东其实就是一个脚本,它告诉Build环境在做Build之前需要准备或知道一些什么东西。最普通的

一种写法是:

PRJ_MMPFILES

project.mmp

这是告诉Build环境:你马上要处理的工程文件名字叫project.mmp。大家如果做比较复杂的程序可能需要同时Build所有的库,那么就在这里把

你所有需要Build的工程都列出来:

PRJ_MMPFILES

project.mmp

project_lib1.mmp

project_lib2.mmp

另外的一个常用的标记是PRJ_PLATFORMS这个东东告诉编译环境,以下的这些平台(Targets)是需要编译的。你可以在这个标记的下一行列出

需要的平台例如:

PRJ_PLATFORMS

WINS ARMI WINSCW

或者直接用

PRJ_PLATFORMS

DEFAULT

注意,如果你不作PRJ_PLATFORMS这个标记其效果等于PRJ_PLATFORMS DEFAULT,所以这个不是必须

的。

第三个常用标记是PRJ_EXPORTS这个东西告诉编译环境在编译之前需要把哪些文件先拷

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top